如何在oracle 10g数据库中插入时间

时间:2013-09-24 11:14:48

标签: oracle10g

我想在oracle数据库中插入日期和时间,我创建了包含列的表

create table myadmin 
(  employe_id number(5), 
  supervisor Varchar2(20),
  department Varchar2(20),
  action Varchar2(20),
  sdate date, 
  stime date) 
While inserting the values below it gives an error. Please tell me how to insert the time ?

insert into myadmin 
(  employe_id,supervisor,department,action,sdate,stime) values 
(83,'gaurav','helpdesk','pick','23-jan-2013','09:43:00');

2 个答案:

答案 0 :(得分:1)

你必须使用关键字to_date在oracle中插入日期,就像这样。

to_date('23-01-2013','dd-mm-yyyy')

基本上你必须使用关键字to_date('你的日期','你的日期格式')。

如果你愿意,你也可以一起添加日期和时间,它就像这样

 to_date('23-01-2013 09:43:00','dd-mm-yyyy hh24:mi:ss')

答案 1 :(得分:1)

Oracle中的日期始终具有日期部分和时间部分。在两个单独的列中包含日期和时间是有意义的,如果可能发生日期为空且时间不是。 (而且,你可以将日期设置为不可思议的值,如1.1.0001。)

但是,如果你想坚持这两个单独的字段,那么使用to_date函数指定所使用的格式,使你的字符串成为日期时间:

insert into myadmin 
(  employe_id,supervisor,department,action,sdate,stime) values 
(83,'gaurav','helpdesk','pick',to_date('23-01-2013','dd-mm-yyyy'), to_date('09:43:00', 'hh24:mi:ss'));