季 季晓峰 Unregistered / Unconfirmed GUEST, unregistred user! 2000-07-29 #22 ClientDataSet.ApplyUpdates(0)
Z zengr Unregistered / Unconfirmed GUEST, unregistred user! 2000-07-31 #24 你在这里说得不太清楚,如果对于单表的话,客户端使用ClientDataSet.ApplyUpdate(0) 几可以将更新数据发到服务器端有服务器根据相关的条件如是使用数据集更新,还是使用 的是动态SQL语句更新等。复杂的是对于多表,或者经过关联查询出来的数据更新时,由于 在客户端显示的数据属于几个不同的表,所以不能直接使用APPLYUPDATE(0)来做,一个 方便的例子是,对于N个表,分别设立N个UpdaetSQL和DataSetProvider来执行,在收到客 户端传来的数据后,通过调用SetParams函数来拆分Delta中的在各个数据回到各自对应的 UpdateSQL中,再调用UpdateSQL的Apply方法真正将数据更新回各表中。
你在这里说得不太清楚,如果对于单表的话,客户端使用ClientDataSet.ApplyUpdate(0) 几可以将更新数据发到服务器端有服务器根据相关的条件如是使用数据集更新,还是使用 的是动态SQL语句更新等。复杂的是对于多表,或者经过关联查询出来的数据更新时,由于 在客户端显示的数据属于几个不同的表,所以不能直接使用APPLYUPDATE(0)来做,一个 方便的例子是,对于N个表,分别设立N个UpdaetSQL和DataSetProvider来执行,在收到客 户端传来的数据后,通过调用SetParams函数来拆分Delta中的在各个数据回到各自对应的 UpdateSQL中,再调用UpdateSQL的Apply方法真正将数据更新回各表中。
N Nchuanguo Unregistered / Unconfirmed GUEST, unregistred user! 2000-07-31 #25 你是否使用了ADOConnection的begin trans来进行事务处理并使用ADOQuery来进行数据的插入 最后使用了AdoConnection的CommitTrans进行提交,如果是这种情况请说明,然后我再回答 因为我现在不太明白你是怎样做的,所以不好贸然作答
你是否使用了ADOConnection的begin trans来进行事务处理并使用ADOQuery来进行数据的插入 最后使用了AdoConnection的CommitTrans进行提交,如果是这种情况请说明,然后我再回答 因为我现在不太明白你是怎样做的,所以不好贸然作答
Z z_cd Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-28 #26 用ApplyUpdates提交数据库 关于多表更新的问题,李维的书《分布式应用系统篇》上讲的N清楚。
牧 牧人 Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-28 #27 李维的《分布式应用系统篇》如有电子书,请别忘了给我一份,谢谢! lzmyh@ynmail.com
B bluepeach Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-28 #28 还没结束吗,人都应该毕业了吧。 关于三层,李维的书讲的非常清楚和详尽,请自行参考。
A Another_eYes Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-28 #29 多表也能用ApplyUpdates(-1). 花招在Server端. Server端可以用UpdateSQL. 不过前提是你用BDE, 而且需要一点小技巧来让UpdateSQL自动填上参数.
Z zhfhq Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-29 #30 说的太笼统,把你的源码发一份给我,我帮你解决,你写的比较简单,应该回解决
秦 秦敏平 Unregistered / Unconfirmed GUEST, unregistred user! 2000-10-29 #34 有没有将Datasetprovider.[Options]中的poAllowCommandText设为True
E entech Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-03 #35 不知你是否有李维写的,可能叫<<DELPHI下开发多层应用系统>>. 你如果是用dbnavigator上的存盘button来存是不行的, 另外用一button在onbuttonclick事件中可以这样写 if clientdatset1.applyupdates(-1)>0 then application.messagebox('保存数据出错','错误',mb_ok+16);
不知你是否有李维写的,可能叫<<DELPHI下开发多层应用系统>>. 你如果是用dbnavigator上的存盘button来存是不行的, 另外用一button在onbuttonclick事件中可以这样写 if clientdatset1.applyupdates(-1)>0 then application.messagebox('保存数据出错','错误',mb_ok+16);
K kevinhe Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-06 #36 zengr说的不错 但用updateSQL太繁琐,效率也有问题,好的办法直接使用TDataSetProvider生成的 UPDATESQL, 对于多表更新只能修改TDataSetProvider控件
L lcaide Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-17 #37 apartment: 1.我是这样做的,在服务端建立MTSDataModal,用TADOConnection连接数据库, 通过接口方法返回结果集,其返回值是_RecordSet型的。客户端用CoMyClass的 CreateRemote(ServerName) 取得接口,把返回的结果集赋值到ADODataSet的 RecordSet属性,然后ADODataSet连接到DataSetProvider,DataSetProvider 连接到ClientDataSet,ClientDataSet然后用DBGrid显示,按我上面提到的 方法是能得到结果集的,看上去传送的应该是结果集本身,但我在接口方法中 把Connection关闭掉后,运行会出现堆栈错误,从这现象看,传送的又象是指针。 这把我弄得很迷糊,请指点。 2.我个人觉得,midas虽然是可以开发多层应用,不过它还是没有脱离传统得结构化 编程,想在midas中应用OOP好象比较困难。另外,能否自己构造Data属性。您知道 Data属性得结构吗?
apartment: 1.我是这样做的,在服务端建立MTSDataModal,用TADOConnection连接数据库, 通过接口方法返回结果集,其返回值是_RecordSet型的。客户端用CoMyClass的 CreateRemote(ServerName) 取得接口,把返回的结果集赋值到ADODataSet的 RecordSet属性,然后ADODataSet连接到DataSetProvider,DataSetProvider 连接到ClientDataSet,ClientDataSet然后用DBGrid显示,按我上面提到的 方法是能得到结果集的,看上去传送的应该是结果集本身,但我在接口方法中 把Connection关闭掉后,运行会出现堆栈错误,从这现象看,传送的又象是指针。 这把我弄得很迷糊,请指点。 2.我个人觉得,midas虽然是可以开发多层应用,不过它还是没有脱离传统得结构化 编程,想在midas中应用OOP好象比较困难。另外,能否自己构造Data属性。您知道 Data属性得结构吗?