【发布时间】:2014-04-24 15:11:20
【问题描述】:
通过this post 之后,我尝试在我的存储过程中添加以下命令:
ALTER TABLE MyTable NOCHECK CONSTRAINT ALL
但是编辑器在它下划线并显示这个错误:
SQL70005: The ALL option cannot be used to modify constraints. You must use individual constraint names instead
我正在使用带有 SQL Server 2008 R2 Express 的 VS2013 Express for Web。我在这里错过了什么?
【问题讨论】:
-
似乎错误是不言自明的;在此版本的 SQL Server 中,您不能对表设置所有约束。
-
那么他们在谈论哪个版本?这个问题非常受欢迎,没有人在任何地方指出这一点。
-
事实上我用谷歌搜索了错误信息并没有得到任何结果:)。不敢相信我是世界上第一个经历这种情况的人。如果在某个特定版本中更改了此行为,则必须在某处记录。
-
您必须使用整个命令
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all"EXEC sp_msforeachtable部分很重要。 -
@abhi:即使我不是存储过程专家,我也不敢相信会是这样。你有什么理由这么认为?
标签: sql sql-server visual-studio tsql