首页 新闻 会员 周边

如何实现主子表数据同步更新?就像事务一样?谢谢!

0
悬赏园豆:30 [已关闭问题]

假设主表对应一个A对象,从表对应一个B对象,各有往数据库添加记录的Add(),请问如何 做到

A.add()
B.add()
一块提交?即达到事务的效果,A和B使用不同的数据库连接

A{... conn.open();.... conn.close()}
A{... conn1.open();.... conn1.close()}

songcan的主页 songcan | 初学一级 | 园豆:10
提问于:2008-10-13 12:06
< >
分享
其他回答(2)
1

简单点:使用触发器即可。

题外话:既然是做数据同步更新这个也要知道的一下的

[Synchronization Services for ADO.NET ]

(具体参考文章:好像cnblogs.com中有人介绍过。你自己找找吧)

 

那就更简单了,直接手写好了。
if(符合更新情况){
第一表更新
if(exist(是否存在此记录在第二表)){
第二表更新

//或者两表没有关联
//第一表更新
//第二表更新

最后在最外层加上事务处理。

RicoRui | 园豆:3663 (老鸟四级) | 2008-10-13 13:28
0

在一个存储过程里写两个insert 不就可以 ?

yeyang | 园豆:418 (菜鸟二级) | 2008-10-13 16:40
0

也可以在A,B对象里都写一个事件,在各自的ADD方法中执行这个事件
这个事件就是表添加(更改|删除)事件

在A中注册B的事件,B中注册A的事件,或者其他类里面注册相应的事件,写好事件执行时的代码

就可以了,如果想知道A的ADD添加的是什么,给事件里面传个参数就行了

当你调用的时候,事件的代码会自动执行

howard-Wang | 园豆:415 (菜鸟二级) | 2008-10-13 22:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册