DataSetProvider更新多个表Join的数据问题 ( 积分: 100 )

  • 主题发起人 主题发起人 ZBJ2001_KF
  • 开始时间 开始时间
Z

ZBJ2001_KF

Unregistered / Unconfirmed
GUEST, unregistred user!
使用ClientDataSet DataSetProvider,AdoDataSet
1、AdoDataSet从两个表JOin数据
2、DataSetProvider.DataSet := AdoDataSet;
3、ClientDataset.data := DataSetProvider.Data;将数据传递到clientDataSet
4、更新时,DataSetProvider.ApplyUpdates(adata,0,err);
5、由于是Join的数据,不能直接更新。要在BeforeUpdateRecord事件中进行处理。
请教,BeforeUpdateRecord事件处理中一般是如何做的。
 
不值得参与吗.参与就好
 
那就看是怎樣更新了,如果設置DataSetProvider.ResolvetoDataset為TRUE的話就是以DataSetProvider.Dataset來進行更新.在更新之前先用DataSetProvider.Dataset所設置的Dataset查找出想要更新的數據.然後再執行更新DataSetProvider.ApplyUpdates(adata,0,err);
 
DataSetProvider.ResolvetoDataset := false;
更新的数据是由两上表JOIN出来的数据。
在BeforeUpdateRecord中一般如何写呀。
 
在BeforeUpdateRecord,写出你在更新的表的字段,传入数据在DeltaDS中,通过insert into, update, delete来更新多表
 
同意楼上说法。不过用以上语句,感觉麻烦。ADO不是可以直接更新多表吗。是不是有限制啊。有时可以,有时不可以
 
这个ADO,因为我们大部分要求更新一个表,当然也可能会要耱更新多个表,多表时,每个表可能有一定约束, 从而导致无法更新成功
 
多人接受答案了。
 
后退
顶部