比如,客户表和订单表具有外键约束,订单表的客户编号引用客户表的客户编号。
对于父表、子表分层提交更新,如下两点我是明白的:先提交父表的插入记录,后提交子表的插入记录----因为父表里面有的,子表里面才能有
先提交子表的删除记录,后提交父表的删除记录----因为如果子表还存在引用的话,父表是不能删除的
但,我不明白更改的提交:
无论是先提交父表还是先提交子表,源数据库都通不过的。因为,在源数据库中,也是存在外键约束的,如果先提交父表的更改,因为子表有引用(此时子表还没有更改),所以通不过;而如果先提交子表的更改的话,显然也是通不过的。
请问,该怎么提交对于数据修改的更新?

解决方案 »

  1.   

    用触发器吧 给你个链接http://www.cnblogs.com/hoojo/archive/2011/07/20/2111316.html
      

  2.   

    SQL Server我要是没记错的话,你加外键约束时 有个Delete Update(更新和删除的规则)..你把那个设一下,应该可以满足你
      

  3.   

    先删除约束 更一个表的字段--> 更新另外一个表字段--> 重建约束 
      

  4.   

    删除外键:alter table 表名称 drop constraint 外键的名称
    建立外键:alter table 子表 add
    consraint 外键的名称 foreign key(子表外键字段) references 主表(关联字段);