首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

sql server中小弟我创建表时设了一个字段默认为getdate(),为什么总是1900-01-01,呀

2012-12-16 
sql server中我创建表时设了一个字段默认为getdate(),为什么总是1900-01-01,急呀?sql server中我创建表时

sql server中我创建表时设了一个字段默认为getdate(),为什么总是1900-01-01,急呀?
sql server中我创建表时设了一个字段默认为getdate(),为什么总是1900-01-01,急呀?
Create table t_mng_stateinfo (
      operno_cr      char(19) primary key   not null,
      opendate_cr       datetime default getdate()
)

insert into t_mng_stateinfo values('110000000000000002','')

查询结果总是为:
110000000000000002 1900-01-01 00:00:00.000 
为什么?急呀?
[最优解释]
insert into t_mng_stateinfo (operno_cr) values('110000000000000002')
试试
[其他解释]
如果没有用hibernate,则用别的函数;
如果用hibernate,则在代码里设置默认值。
[其他解释]
使用hibernate的话,如果你没有显示的插入这个时间值,则默认显示为null,在程序中处理下,生成当前的时间了再插入数据库。
[其他解释]
LZ第二个参数''明显不是datetime类型,自动用default值替换了
[其他解释]
没这样子没有用
会报一个错《列名或所提供值的数目与表定义不匹配。》
[其他解释]

引用:
如果没有用hibernate,则用别的函数;
如果用hibernate,则在代码里设置默认值。

如何用代码设置默认值?

热点排行