SQL删除记录中包含外键约束的处理…

来源:互联网 发布:瑜伽软件哪个好用 编辑:程序博客网 时间:2024/06/10 09:43

有两种方法:

一、用语句来禁用该约束

alter table 表名 disable constraint 约束名;

........

当然删除了表以后,别忘记在启用该约束

alter table 表名 enable constraint 约束名;

二、级联删除

在创建表的时候就需要设置级联删除和级联更新(修改)。方法如下:

alter table SZ_Picture
add constraint FK_SZ_PICTU_RELATIONS_SZ_PICTU foreign key (pictureTypeId)
references SZ_PictureType (pictureTypeId)
on update cascade on delete cascade --其中这句就是级联更新和级联删除

  级联删除:

  删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用。在级联删除中,还删除其外键值引用删除的主键值的所有行。

  级联更新:

  更新主键值的操作,该值由其它表的现有行中的外键列引用。在级联更新中,更新所有外键值以与新的主键值相匹配。

 

另外,修改not null约束的方法如下:

alter table Department alter column Dname nvarchar(20)null

0 0