aa 表: ID 主键 fID 外键 (fID->[ab表的] ID) 我在sql server 2000中设的ID  fID     A (字段)
1    3      0(值)ab 表:  ID 主键 
ID   B
3    0
若我要把aa表的FID 和ab表的ID 值更新为8,怎么写更新语名,试了几次总是报错。

解决方案 »

  1.   

    在建表的时候设定完整性约束的执行方式

    CREATE TABLE1 (ID char(20),
                  FID char(20),
                  PRIMARY KEY(ID,FID),
                  FOREIGN KEY(FID) REFENCES TABLE2,
                          ON UPDATA CASCADE)
    这样在更新的时候就不会报错了,并且更新TABLE2的ID的时候,TABLE1的FID也将随着更新
    当设定为ON DELETE CASCADE 的时候,会一同删除
            ON ****** NO ACTION ,会不执行删除或更新
      

  2.   

    企业管理器--右键表--设计表--任意字段处按右键--关系--新建--设置与其他表的关联(即那些表的字段与本表的字段有关系,要被自动更新)--设置好后,选中"对 INSERT 和 UPDATE 强制关系"--并同时选中"级联更新相关的字段",如果要级联删除,再选中"级联删除相关的记录"--最后确定就可以了
      

  3.   

    先删除掉 fID 外键 (fID->[ab表的] ID)的约束在  alter table aa add Constraint PK_aa_ab foreign key (fID)  references ab
        on update cascade