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


当前回答

步骤1.首先,您必须使用添加字段来更改表

alter table table_name add field field_name data_type

步骤2创建默认值

USE data_base_name;
GO
CREATE DEFAULT default_name AS 'default_value';

步骤3然后您必须执行此过程

exec sp_bindefault 'default_name' , 'schema_name.table_name.field_name'

示例-

USE master;
GO
EXEC sp_bindefault 'today', 'HumanResources.Employee.HireDate';

其他回答

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 {TABLENAME} 
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} 
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES

例子:

ALTER TABLE Admin_Master 
ADD Can_View_Password  BIT NULL 
CONSTRAINT DF_Admin_Master_Can_View_Password DEFAULT (1)
WITH VALUES 
ALTER TABLE ADD ColumnName {Column_Type} Constraint

MSDN文章ALTERTABLE(Transact-SQL)具有所有altertable语法。

向表中添加新列:

ALTER TABLE [table]
ADD Column1 Datatype

例如

ALTER TABLE [test]
ADD ID Int

如果用户希望使其自动递增,则:

ALTER TABLE [test]
ADD ID Int IDENTITY(1,1) NOT NULL

步骤1.首先,您必须使用添加字段来更改表

alter table table_name add field field_name data_type

步骤2创建默认值

USE data_base_name;
GO
CREATE DEFAULT default_name AS 'default_value';

步骤3然后您必须执行此过程

exec sp_bindefault 'default_name' , 'schema_name.table_name.field_name'

示例-

USE master;
GO
EXEC sp_bindefault 'today', 'HumanResources.Employee.HireDate';