如何从表的列中删除默认约束?

时间:2012-07-02 16:05:37

标签: sql-server

我通过向其添加一个额外的列“AOTProcessRealTime”来更改表“luAffinity”。我在列“AOTProcessRealTime”中添加了一个默认约束。以下是我解雇的查询:

ALTER TABLE luAffinity ADD AOTProcessRealTime BIT NOT NULL CONSTRAINT DF_luAffinity_ProcessRealTime DEFAULT 0

现在我想删除AOTProcessRealTime列。为此,我必须先删除默认约束。所以我编写了以下查询来删除约束:

ALTER TABLE luAffinity DROP CONSTRAINT DF_luAffinity_ProcessRealTime

在运行上述查询时,我得到一个错误:

DF_luAffinity_ProcessRealTime is not a constraint. Could not drop constraint.

但是,已成功创建约束,但我无法将其删除。我只想删除AOTProcessRealTime列。但我无法删除它。难道我做错了什么?任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

对于SQL Server,您的语法应该有效。也许约束的名称有一个微妙的错字?使用

SELECT *
 from sys.default_constraints
 where parent_object_id = object_id('luAffinity')

检查当前的设置方式。