1.getdate()函数问题
go create table table_1( id int primary key identity, name varchar(10) not null, daytime datetime default (getdate()) )
如上,我定义了一个表,设置daytime列的默认值为获取当前时间
插入一些数据
insert into table_1 values('时间','') insert into table_1(name) values('时间') insert into table_1(name) values('时间','getdate()')
得到的数据是这样的
4 时间 1900-01-01 00:00:00.000 5 时间 2016-01-20 20:47:48.153 6 时间 2016-01-20 20:47:48.153
为什么第一句和其他两句的效果会不一样呢?
因为在SQL中,datetime数据类型插入控制默认为1900-01-01 00:00:00.000
如果希望显示的是默认值就需要在insert的时候 排除掉datetime