Oracle中插入默认时间

数据库中date列的默认值是sysdate 在使用struts+hibernate+spring的情况下 怎么在插入数据的时候在date列中插入系统时间?我的总报异常,dpo的date为null...
问题是我用三个框架写的····sql语句不由我控制的···

Oracle中插入默认时间
分两种情况,一种是创建表时自动创建带有默认值的字段,一种是把没有默认值的字段设置为有默认值的字段。
第一种情况:

1
2
3

create table test
(id int,
starttime date default sysdate not null );

插入测试数据:

1
2

insert into test (id) values (1);
commit;

验证结果:

第二种情况,比如在test表中加一个endtime,时间也要求是系统默认时间。
添加字段且不设置默认值:

1

alter table test add endtime date;

添加默认值语句:

1

alter table test modify endtime default sysdate;

测试语句:

1
2

insert into test (id) values (2);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-07-03
插入oracle服务器当前时间
insert into tb (date) values (sysdate);--sysdate为oracle服务器当前时间
插入自定义时间
insert into tb (date) values to_date('2008-06-09','yyyy-MM-dd');本回答被网友采纳
第2个回答  2008-07-03
这个是在数据库中设置吧,把数据表中对应字段的default值该系统时间按就行了。
第3个回答  2020-01-19
定义时间变量
用for...loop循环十二次插入数据,用add_months(to_date('&date','yyyy-mm-dd'),1)
每循环一次加一个月。
declare
nba_date
date
:=
sysdate;
begin
for
i
in
1
..
12
loop
nba_date
:=
add_months(
to_date(nba_date),1);
insert
into
nba
values
('00','00',nba_date);
end
loop;
end;
第4个回答  2008-07-03
sql语句的sysdate不要加'',你再看看sql其它有没有问题。