默认(DEFAULT)约束用于给表中指定列赋予一个常量值(默认值),当向该表插入数据时,如果用户没有明确给出该列的值,SQL Server会自动为该列输入默认值。每列只能有一个DEFAULT约束。
1.使用Transact-SQL语句创建默认约束
创建默认约束的语法格式为:
[ CONSTRAINT constraint_name ] DEFAULT (expression | NULL) FOR column_name
在创建表格的同时,添加默认约束在第3.3.1节中已经介绍过,在此不再举例。
【例3.39】 修改Orders表,在OrderDate字段创建DEFAULT约束,将当前日期设为默认值,当未给Orders表的订货日期提供值时,取当前日期插入。
ALTER TABLE Orders
ADD CONSTRAINT default_date DEFAULT getdate() FOR OrderDate
注意
不能在具有IDENTITY属性的列上设置DEFAULT约束。
DEFAULT约束只能用于INSERT语句。
如果对一个已经有数据的表添加DEFAULT约束,原来的数据不会得到默认值。
2.使用SQL Server Management Studio创建默认约束
在SQL Server Management Studio下创建DEFAULT约束的方法已在3.3.1节中介绍,这里不再重复。