【发布时间】:2014-12-12 13:42:24
【问题描述】:
在 SQL Server 2008 中,如果在某些外键中从其他表中使用了所涉及的记录,我如何禁止删除(或抛出异常)?
我在关系中设置了“删除时 -> 什么都没有”,但这不是我需要的...我需要停止删除...
假设我有表books和表authors,并且在books中我有idAuthor,如果我至少有一本作者写的书,我怎么能禁止删除作者?
【问题讨论】:
-
这应该是默认的。如果要自动删除该作者的所有书籍,则必须在 FK 关系中指定
cascade delete。您必须首先创建该关系。你保存了吗? -
是的,我不知道为什么,无论如何它都会删除...我的意思是,如果设置为删除 -> 什么都没有,它会删除不编辑书籍的作者...
-
我不知道“删除-> 无”选项,你在哪里设置?您有以下选项: 1. 无操作 2. 级联 3. 设置 Null 4. 设置默认值。 “无操作”表示错误。