SQL Server 2000约束

时间:2009-07-07 07:20:34

标签: sql-server constraints

有没有办法从中删除所有外键和主键约束 数据库?

3 个答案:

答案 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.sysobjectsxtype in ('F', 'PK')表中选择行,并为每行生成相应的alter table语句。但是,我先问一下,你为什么要这样做?由于各种原因,约束非常重要。

答案 2 :(得分:0)

您可以找到sysobjects表中列出的约束:

SELECT * FROM sysobjects WHERE xtype IN ('F', 'PK')

使用游标循环遍历相关记录,在将删除每个约束的字符串中构建SQL语句,并使用EXEC()语句。