SQL给学生表 s 增加入学时间属性列,并设置默认值为当前时间

时间:2021-06-28 10:01:09
给学生表 s 增加入学时间属性列,并设置默认值为当前时间

我这么写的

alter table s 
add 入学时间 datetime
constraint C1 default Getdate();

运行后s中加上了那一列    但是默认值是NULL
应该怎么写啊

5 个解决方案

#1


设置默认值,仅当插入时,如果不给定其值,就默认为所给的值。如果你要给已经插入的记录设置值,那就用update吧
比如
update s set 入学时间 = GETDATE();
全部的“入学时间”列都为当前系统的时间。

#2


引用 1 楼 lang_love_java 的回复:
设置默认值,仅当插入时,如果不给定其值,就默认为所给的值。如果你要给已经插入的记录设置值,那就用update吧
比如
update s set 入学时间 = GETDATE();
全部的“入学时间”列都为当前系统的时间。

正解

#3


引用楼主 smile_watermelon 的回复:
给学生表 s 增加入学时间属性列,并设置默认值为当前时间

我这么写的

alter table s 
add 入学时间 datetime
constraint C1 default Getdate();

运行后s中加上了那一列    但是默认值是NULL
应该怎么写啊


不较你正确的答案,教你一招得到正确答案的方法:
1、运行事件探察器(2000叫这个名,2008不叫这个名,但功能相似);
2、在你需要修改的表上通过窗体增加你想要的字段并设置好其属性,然后保存;
3、在事件探察器中就可以得到你想要的sql(很多条数据,你需要找到正确的那条)。

#4


#1.新增列,设置了默认值,原有的数据不会自动增加默认值,会初始化为NULL
#2.新增列,设置了默认值,再INSERT的时候,如果未赋值,会初始化为GETDATE()
所以自己根据业务把老的数据UPDATE一下即可

#5


alter table s add 入学时间 datetime not null default getdate()

#1


设置默认值,仅当插入时,如果不给定其值,就默认为所给的值。如果你要给已经插入的记录设置值,那就用update吧
比如
update s set 入学时间 = GETDATE();
全部的“入学时间”列都为当前系统的时间。

#2


引用 1 楼 lang_love_java 的回复:
设置默认值,仅当插入时,如果不给定其值,就默认为所给的值。如果你要给已经插入的记录设置值,那就用update吧
比如
update s set 入学时间 = GETDATE();
全部的“入学时间”列都为当前系统的时间。

正解

#3


引用楼主 smile_watermelon 的回复:
给学生表 s 增加入学时间属性列,并设置默认值为当前时间

我这么写的

alter table s 
add 入学时间 datetime
constraint C1 default Getdate();

运行后s中加上了那一列    但是默认值是NULL
应该怎么写啊


不较你正确的答案,教你一招得到正确答案的方法:
1、运行事件探察器(2000叫这个名,2008不叫这个名,但功能相似);
2、在你需要修改的表上通过窗体增加你想要的字段并设置好其属性,然后保存;
3、在事件探察器中就可以得到你想要的sql(很多条数据,你需要找到正确的那条)。

#4


#1.新增列,设置了默认值,原有的数据不会自动增加默认值,会初始化为NULL
#2.新增列,设置了默认值,再INSERT的时候,如果未赋值,会初始化为GETDATE()
所以自己根据业务把老的数据UPDATE一下即可

#5


alter table s add 入学时间 datetime not null default getdate()