所以我们有一个脚本(从Visual Studio中的SQL Schema比较生成)。
然而它在某些方面失败了(因为无论出于何种原因,数据库升级包含它本不应该的约束)
因此,丢弃约束失败,因为约束甚至不存在。
非常这样:
ALTER TABLE [dbo].[ZONE] DROP CONSTRAINT [DF_ZONE_EXCLUDE];
GO
ALTER TABLE [dbo].[ZONE_NUMS] DROP CONSTRAINT [DF_ZONE_NUMS_ZONE_WORK];
GO
例如,将运行ZONE放置约束,但在ZONE_NUMS放置约束上将失败(在尝试放弃时说不存在ZONE_NUMS约束)。并且有500个这样的......都在一个大块(从生成升级脚本生成)
有没有办法让它继续运行而不是停止脚本如果它点击它试图丢弃并且不存在?
由于
答案 0 :(得分:0)
你应该试试这个,你觉得你的脚本试图删除一个不存在的约束 -
How can I check if a SQL Server constraint exists?
简单地说,在删除之前检查存在的约束。我相信标准做法。