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


当前回答

ALTER TABLE <YOUR_TABLENAME>
ADD <YOUR_COLUMNNAME> <DATATYPE> <NULL|NOT NULL> 
ADD CONSTRAINT <CONSTRAINT_NAME>   ----OPTIONAL
DEFAULT <DEFAULT_VALUE>

如果您没有提供约束名称,那么SQLServer将使用默认名称。

示例:-

ALTER TABLE TEMP_TABLENAME
ADD COLUMN1 NUMERIC(10,0) NOT NULL
ADD CONSTRAINT ABCDE   ----OPTIONAL
DEFAULT (0)

其他回答

尝试以下查询:

ALTER TABLE MyTable
ADD MyNewColumn DataType DEFAULT DefaultValue

这将在表中添加一个新列。

试试这个

ALTER TABLE Product
ADD ProductID INT NOT NULL DEFAULT(1)
GO
ALTER TABLE <table name> 
ADD <new column name> <data type> NOT NULL
GO
ALTER TABLE <table name> 
ADD CONSTRAINT <constraint name> DEFAULT <default value> FOR <new column name>
GO

您可以使用此查询:

ALTER TABLE tableName ADD ColumnName datatype DEFAULT DefaultValue;

这也可以在SSMS GUI中完成。我在下面显示了默认日期,但默认值当然可以是任何值。

将表放在设计视图中(右键单击对象中的表浏览器->设计)向表中添加列(或单击要更新的列,如果它已经存在)在下面的列财产中,在默认值或绑定字段中输入(getdate())或“abc”或0或任何您想要的值,如下图所示: