关于三层开发的典型的问题(讨论有分)(100)

  • 主题发起人 主题发起人 shine_yzl
  • 开始时间 开始时间
S

shine_yzl

Unregistered / Unconfirmed
GUEST, unregistred user!
请教midas + ado 的主要问题1,使用什么数据库,比如让你选择 ACCESS ,SQL ;2,主要的表单分为四类:基础资料,单据,报表,功能计算,重点关注的是单据中的主从表结构如何解决,数据的更新的问题,说明白点分成一下小点2.1 新增一单据时,如何解决新增,不保存,不会在表中产生记录,应为,主表只有一条记录,从表,我要是做第二条记录就会保存;2.2 多用户操作时候如何回避同时更改一个资料时候的报错问题;2.3 单号的问题最好的解决方法?
 
1,使用什么数据库,比如让你选择 ACCESS ,SQL ; -->随便,我以前三层中数据库用过sql,access, sql anywhere, mysql, oracle, db2,都可以。2,主要的表单分为四类:基础资料,单据,报表,功能计算,重点关注的是单据中的主从表结构如何解决,数据的更新的问题,说明白点分成一下小点 -->不清楚你对服务端的RemoteDataModule了解的程度,有信心的话,该单元的5个AS_开头的函数,你可以重写。2.1 新增一单据时,如何解决新增,不保存,不会在表中产生记录,应为,主表只有一条记录,从表,我要是做第二条记录就会保存; -->三层中一般客户端的DataSet用ClientDataSet,客户端不掉呀ClientDataSet.Applyupdates函数,数据就不会提交到后台。2.2 多用户操作时候如何回避同时更改一个资料时候的报错问题; -->按理说应该需要报错,比如我删除了此时你正在修改的数据,我删除完成后,你再保存,那更新的记录数肯定为0,如果此时不报错,你还以为你的操作成功了。 -->有个同事以前做的是,数据更改之前,先对记录上锁(数据表增加标识字段),这样别人也想更改时,就可以发现数据已经有人在处理了。但这种方式 只适合个别界面,毕竟如果所有数据都这么处理,那也太麻烦了。2.3 单号的问题最好的解决方法? -->数据提交时,由后台服务端程序产生,并将产生的单号返回给客户端,客户端将此单号显示出来。
 
真是专业,有实际的例子?
 
例子没有,因为需要更改的地方太多,当时我开发,花了2个月的时间才写完。
 
我通过EXE+BPL+DLL,当BPL放入ClientDataSet,SocketConnection 的时候需要包含dsnap.bpl,dsnapcon.bpl 但是DELPHI没有这个东西啊呀
 
要到C:/WINDOWS/system32 去查找
 
楼上说的正确~~
 
确实可以找到,但是主从表的问题如何解决?
 
现在又发生一个问题,为何主从表使用ADO连接时候,从表的数据竟然查询一次就将记录复制一遍啊,急切!
 
我再将从表打开有恢复了记录
 
select orders.OrderNo, orders.CustNo, orders.SaleDate, orders.Terms, orders.ItemsTotal, orders.TaxRatefrom ordersas orderswhere orders.CustNo =:CustNo发现必须要有 where orders.CustNo =:CustNo 这一句??其实以哦设置了主从的关系就不用噶前
 
建议读下李维书<<delphi5.x分布式多层系统篇>
 
这些对于刚入门的是有点难度,不过只要你肯学习,这些问题不是什么大问题。
 
接受答案了.
 
后退
顶部