将具有默认值的列添加到SQL Server中的现有表

如何将具有默认值的列添加到SQL Server 2000 / SQL Server 2005中的现有表中?


ALTER TABLE {TABLENAME} 
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} 
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES

ALTER TABLE Protocols
ADD ProtocolTypeID int NOT NULL DEFAULT(1)
GO

包含DEFAULT将使用默认值填充现有行中的列,因此不违反NOT NULL约束。


添加可空列时, WITH VALUES将确保将特定的DEFAULT值应用于现有行:

ALTER TABLE table
ADD column BIT     -- Demonstration with NULL-able column added
CONSTRAINT Constraint_name DEFAULT 0 WITH VALUES
链接地址: http://www.djcxy.com/p/619.html

上一篇: Add a column with a default value to an existing table in SQL Server

下一篇: Is there a unique Android device ID?