代码改变世界

SQL 2005 中的 "级联"

2010-03-23 21:16  撞破南墙  阅读(683)  评论(0编辑  收藏  举报

问题

删除  KF_User 表中的 数据时候 。发生错误。

 

DELETE 语句与 REFERENCE 约束"FK_KF_Document_KF_User"冲突。该冲突发生于数据库"CMS",表"dbo.KF_Document", column 'UserID'。

 

s1:  跑去 数据库 里  尝试删除 一条数据 试试。

 

s2:查看关系

发现更新 规则 里 没有之前熟悉的  级联。

以前  用SQL2000和ACCESS的时候都是 级联更新 级联  删除。

 

s3: 现在 园子里查查 :

找到这篇文章

 浅谈SQL SERVER 2005 之引用完整性

 

补充知识:

引用完整性

附上 一些 摘抄的 东东。

 

相关设置说明:

  

无操作:当在删除或更新主键表的数据时,将显示一条错误信息,告知用户不允许执行该删除或更新操作,删除或更新操作将会被回滚。

 

层叠:删除或更新包含外键关系中所涉及的数据的所有行。
说明:“层叠”在SQL Server 2000中又叫“级联”。

 

设置空:这是SQL Server 2005新增的功能。如果表的所有外键列都可以接受空值,则将该值设置为空。
说明:要将外键的删除规则和更新规则设为“设置空”,则该外键必须是可以为空的字段。

 

设置默认值:这是SQL Server 2005新增的功能。如果表的所有外键列都已定义了默认值,则将该值设置为该列定义的默认值。
说明:要将外键的删除规则和更新规则设置为“设置默认值”,该外键必须是有默认值的字段。

 

 

荣耀属于    http://www.cnblogs.com/xugang/archive/2008/08/08/1263678.html