重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你好,Oracle中日期类型是date类型,sql语句中是区分类型的,也就是说虽然形势上'2012-12-21'是一个日期,但是它在Oracle中却是实实在在的字符串类型,所以不能插入到date类型的字段里,解决方法就是将日期字符串转换成date类型就可以了,这里可以使用to_date函数,如:
公司主营业务:网站建设、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出鄱阳免费做网站回馈大家。
insert into tablename (date_column) values(to_date('2012-12-21','yyyy-mm-dd') )。
to_date里需要两个参数,第一个是日期字符串,可以在程序中拼好(Java或者其他高级程序语言想实现这一点都是很容易的);第二个参数是日期的格式,'yyyy-mm-dd'的意思是想要4位的年份,两位的月份(比方说如果为2,则保存为:02)和两位的日期(这个意义和月份相同,假如为4号,则保存为04)。如果想要其他的格式或者想插入具体的时分秒时间都是可以的,比如:
to_date('2012-12-21 12:12:12','yyyy-mm-dd hh24:mi:ss')后边的24代表使用24时制时间。够明白吧!
Oracle数据库插入日期型数据的方法
racle数据库插入日期型数据,应该怎么下手呢?下面我为大家整理了关于Oracle数据库插入日期型数据的方法,希望能为你提供帮助:
往Oracle数据库中插入日期型数据(to_date的用法)
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-20 18:31:34' , 'YYYY-MM-DD HH24:MI:SS' ) ) ;
查询显示:2007-12-20 18:31:34.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-14 14:10' , 'YYYY-MM-DD HH24:MI' ) );
查询显示:2007-12-14 14:10:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-14 14' , 'YYYY-MM-DD HH24' ) );
查询显示:2007-12-14 14:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-11-15' , 'YYYY-MM-DD' ) );
查询显示:2007-11-15 00:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-09' , 'YYYY-MM' ) );
查询显示:2007-09-01 00:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007' , 'YYYY' ) );
查询显示:2007-05-01 00:00:00.0
-------------------
当省略HH、MI和SS对应的.输入参数时,Oracle使用0作为DEFAULT值。
如果输入的日期数据忽略时间部分,Oracle会将时、分、秒部分都置为0,也就是说会取整到日。
同样,忽略了DD参数,Oracle会采用1作为日的默认值,也就是说会取整到月。
但是,不要被这种“惯性”所迷惑,如果忽略MM参数,Oracle并不会取整到年,而是取整到当前月。 ;
是number型的你to_char成char型当然会报错了,而且还有“-”这种字符怎么能存入number。
v_begintime和v_endtime都赋值为sysdate,相减自然为0
至于v_begintime的值变为了21-JAN-15,失去了秒,这是显示的格式问题。你可以用to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')来查看秒