有没有办法从中删除所有外键和主键约束 数据库?
答案 0 :(得分:1)
以理查德的代码为基础:
SELECT
'ALTER TABLE ' + object_name(parent_obj) + ' DROP CONSTRAINT ' + object_name(id),* FROM sysobjects WHERE xtype IN ('F', 'PK')
您可以在QA& amp;观察你的数据库流失,因为它将你的表变成堆
答案 1 :(得分:0)
您可以使用dbo.sysobjects
从xtype in ('F', 'PK')
表中选择行,并为每行生成相应的alter table
语句。但是,我先问一下,你为什么要这样做?由于各种原因,约束非常重要。
答案 2 :(得分:0)
您可以找到sysobjects表中列出的约束:
SELECT * FROM sysobjects WHERE xtype IN ('F', 'PK')
使用游标循环遍历相关记录,在将删除每个约束的字符串中构建SQL语句,并使用EXEC()语句。