gpt4 book ai didi

sql-server - 在使用 sql 脚本添加外键之前检查外键

转载 作者:行者123 更新时间:2023-12-04 01:33:00 25 4
gpt4 key购买 nike

我有一个向表添加外键的 SQL 脚本,如下所示。

ALTER TABLE [security].[Pages] WITH NOCHECK
ADD CONSTRAINT [FK_Pages_PageClasses] FOREIGN KEY ([PageClassId]) REFERENCES [security].[PageClasses]([PageClassId]) ON DELETE NO ACTION ON UPDATE NO ACTION;

有时表已经有这个外键,所以当它从 Management Studio 运行时会显示错误。是否可以添加查询以在应用之前检查 key 是否存在?有一个更好的方法吗?这必须适用于 MS SQL 2005 和 2008。

最佳答案

使用 OBJECT_ID测试是否存在的函数。

IF OBJECT_ID('[security].[FK_Pages_PageClasses]') IS NULL
ALTER TABLE [security].[Pages] WITH NOCHECK
ADD CONSTRAINT [FK_Pages_PageClasses] FOREIGN KEY ([PageClassId]) REFERENCES [security].[PageClasses]([PageClassId]) ON DELETE NO ACTION ON UPDATE NO ACTION;

关于sql-server - 在使用 sql 脚本添加外键之前检查外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4430231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com