我知道语法:
ALTER TABLE [TheTable] DROP CONSTRAINT [TheDefaultConstraint]
但是,当我不知道默认约束的名称时,如何删除它呢?(也就是说,它是在CREATE TABLE
次时自动生成的.)
我知道语法:
ALTER TABLE [TheTable] DROP CONSTRAINT [TheDefaultConstraint]
但是,当我不知道默认约束的名称时,如何删除它呢?(也就是说,它是在CREATE TABLE
次时自动生成的.)
如果要手动执行此操作,可以使用Management Studio查找(在表中的"约束" node 下).
要使用SQL执行此操作,请执行以下操作:
如果约束是默认约束,可以使用sys.default_constraints
来查找:
SELECT OBJECT_NAME(parent_object_id) AS TableName, name AS ConstraintName
FROM sys.default_constraints ORDER BY TableName, ConstraintName
如果您也在寻找其他约束(判断、唯一、外键、默认、主键),可以使用sysconstraints
:
SELECT OBJECT_NAME(id) AS TableName, OBJECT_NAME(constid) AS ConstraintName
FROM sysconstraints ORDER BY TableName, ConstraintName
您没有说明正在使用哪个版本的SQL Server.以上工作都是在SQL2005和SQL2008上进行的.