1、在创建表的时候,给字段添加的默认值约束,没有约束名称。
如:CREATE TABLE "dbo"."Test" ( id int PRIMARY KEY, sex varchar(10) DEFAULT ('boy'), name varchar(40), age int DEFAULT ((1))) 。
注意: 此时默认值约束,没有约束名称。DMBS会自动的给添加一个“默认值约束名称”,varchar类型和int类型在DEFAULT 中分别用‘’和()把value值包起来。
2、在创建表之后,给字段添加的默认值约束。
如:alter table [dbo].[Test] add constraint Test_name_Default Default('Tom') for baseCurrencyCode
注意:此时,必须编写一个约束名称,防止重名。
3、修改字段原有的默认值约束。
如:declare @csname varchar(100) set @csname= '' select @csname=[name] from sysobjects where exec('alter table [dbo].[Test] add constraint ' + @csname + ' Default((18)) for age')。
注意:默认值约束,不能修改。必须先drop之后再add drop的时候,必须知道当前“默认值约束的名称”。通过上面的sql可以查出Test表的age字段所绑定的“默认值约束名称”,才可以drop。
扩展资料:
DEFAULT 值只有当一个字段没有在 INSERT 或 MERGE 中指定值,或者使用了 DEFAULT 关键字时才会使用。如果不显式地声明一个 DEFULAT 值,SQL将隐式地将默认值定义为 NULL,而且 DEFAULT 关键字也是这样。
在SQL中,可以在 DEFAULT 子句中使用诸如 SYSDATE 或 CURRENT_TIMESTAMPE 之类的伪字段。
参考资料来源: