我的 SQL Server 数据库中有一个现有列。我已经尝试了所有我能想到的方法,但无法将默认值添加到列中。在所有其他数据库中有效的是
alter table mytable
alter column mycolumn set default(now()) --mycolumn is a datetime
如何在 SQL Server 中执行此操作?
我得到的确切语法的错误是incorrect syntax near the keyword 'set'
我的 SQL Server 数据库中有一个现有列。我已经尝试了所有我能想到的方法,但无法将默认值添加到列中。在所有其他数据库中有效的是
alter table mytable
alter column mycolumn set default(now()) --mycolumn is a datetime
如何在 SQL Server 中执行此操作?
我得到的确切语法的错误是incorrect syntax near the keyword 'set'
采用:
ALTER TABLE dbo.mytable
ADD CONSTRAINT def_mycolumn DEFAULT GETDATE() FOR mycolumn
有关详细信息,请参阅:使用默认约束
如果要更改已存在列的默认值。您需要先删除约束,然后重新添加约束,如下所示
ALTER TABLE <TABLE>
DROP CONSTRAINT <CONSTRAINT NAME>
ALTER TABLE <TABLE>
ADD CONSTRAINT <CONSTRAINT NAME> DEFAULT <VALUE> for <COLUMN>
如果您没有表的约束详细信息,则可以使用以下查询
sp_helpconstraint <TABLE>