SQL Server 2008 中怎么对已存在值的列设默认值

时间:2022-01-07 02:31:20
在SQL Server 2008 中有一列已经存在值,该列的类型是nvarchar ,现在需要对它设置一个默认值,在网上查了一下有说可以用默认值绑定,我绑定了之后添加了一条新信息,该列的值我没有赋,插入成功后该列的值是null,并不是我绑定的那个值,请各位大侠帮帮忙!先谢了!

3 个解决方案

#1


not null default '1213'

#2


create table tb(id int,col nvarchar(10))
insert into tb(id) select 3
go
ALTER TABLE dbo.tb ADD CONSTRAINT
DF_tb_col DEFAULT '' FOR col
go
insert into tb(id) select 5
select * from tb
--注意,设置默认值前插入的为NULL,设置后插入的为空串
/*
id          col
----------- ----------
3           NULL
5           

(2 行受影响)

*/
go
drop table tb

#3


谢谢大家的帮助,我自己解决了!
使用alter table operator add constraint beginTime default '20110901' for restrict_times语句就可以。

#1


not null default '1213'

#2


create table tb(id int,col nvarchar(10))
insert into tb(id) select 3
go
ALTER TABLE dbo.tb ADD CONSTRAINT
DF_tb_col DEFAULT '' FOR col
go
insert into tb(id) select 5
select * from tb
--注意,设置默认值前插入的为NULL,设置后插入的为空串
/*
id          col
----------- ----------
3           NULL
5           

(2 行受影响)

*/
go
drop table tb

#3


谢谢大家的帮助,我自己解决了!
使用alter table operator add constraint beginTime default '20110901' for restrict_times语句就可以。