更改列的默认值

时间:2009-12-08 09:00:37

标签: sql sql-server-2000 default

我有一个表'CompanyID int not null'并且其默认值设置为10.现在我想编写一个查询,将此默认值更改为1.我该怎么办?< / p>

任何帮助将不胜感激。我正在使用SQL Server 2000。

4 个答案:

答案 0 :(得分:17)

我认为你能做的最好就是放弃约束并再次创建它:

alter table dbo.yourTable
drop constraint default_value_name_constraint
go
alter table dbo.yourTable
add constraint default_value_name_constraint default YourValue for ColumnName
go

答案 1 :(得分:9)

首先,在字段上找出用于设置默认值的'约束'的名称。您可以通过运行此查询来执行此操作:

EXEC sp_helpconstraint 'MyTable'

然后,您可以删除并重新添加约束。

ALTER TABLE dbo.MyTable
DROP CONSTRAINT def_MyTable_CompanyID
GO

ALTER TABLE dbo.MyTable
ADD CONSTRAINT def_MyTable_CompanyID DEFAULT (1) FOR CompanyID
GO

答案 2 :(得分:1)

ALTER TABLE tablename ALTER COLUMN CompanyID SET DEFAULT 1; 

答案 3 :(得分:-1)

ALTER TABLE tablename ALTER COLUMN CompanyID SET DEFAULT Pending;

我在mysql中尝试了这个,并且在Pending附近发出了错误

然后我试了

 ALTER TABLE tablename ALTER COLUMN CompanyID SET DEFAULT 'Pending';

工作得很好。