如何:对 INSERT 和 UPDATE 语句禁用外键约束
如果您知道新数据将与约束冲突或者如果约束仅适用于数据库中已有的数据,则可选择该选项以在 INSERT 和 UPDATE 事务过程中禁用外键约束。
备注
为 SQL Server 2012 格式的数据库提供了一个新版本的表设计器。本主题介绍表设计器的旧版本,可将其与 SQL Server 早期格式的数据库配合使用。
在新版本中,可通过图形界面或直接在脚本窗格中更改表定义。如果使用图形界面,表定义将在脚本窗格中自动更新。若要在脚本窗格中应用 SQL 代码,请选择“更新”按钮。有关新版本的更多信息,请参见如何使用表设计器创建数据库对象。
备注
对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见 Visual Studio 设置。
对 INSERT 和 UPDATE 语句禁用外键约束
在服务器资源管理器中,选择包含该约束的表,再从**“数据库”菜单中单击“打开表定义”**。
该表在**“表设计器”**中打开。
从**“表设计器”菜单中单击“关系”**。
在**“外键关系”对话框中,在“选定的关系”**列表中选择关系。
在网格中单击**“删除规则”或“更新规则”**,然后从属性左侧的下拉列表框中选择一项操作。
无操作 显示一条错误信息,告知用户不允许执行该删除操作,Delete 将被回滚。
级联 删除包含外键关系中所涉及的数据的所有行。
设置空 如果表的所有外键列都可接受空值,则将该值设置为空。 仅适用于 SQL Server 2005。
设置默认值 如果表的所有外键列均已定义默认值,则将该值设置为列定义的默认值。 仅适用于 SQL Server 2005。
备注
如果您计划使用触发器实现数据库操作,则必须禁用外键约束,以便触发器能够运行。