将时间戳插入日期字段(Oracle)

时间:2014-08-08 21:09:06

标签: oracle date

我们有包含日期​​字段(类型日期)的表,并且在日期字段中插入时间戳在我们的一些oracle环境中工作(我们有多个开发环境)并且在某些环境中失败。

我想知道为什么它在某些情况下有效,有些情况下ORA-01843失败:没有效月

实施例

Table1
date1  DATE

以下sql在某些环境中有效,在某些环境中失败

Insert into Table1 (date1) values ( to_timestamp(sysdate))

Oracle版本 - Oracle Database 11g

我们可以将时间戳插入日期字段(如上所述)吗? oracle是否支持将时间戳值插入日期字段?

提前致谢。

1 个答案:

答案 0 :(得分:2)

而不是sysdate,使用current_timestamp(虽然它毫无意义,因为无论如何它将成为数据库中的date):

insert into Table1 (date1) values (current_timestamp)

我猜它失败的原因是to_timestamp需要varchar并且转换失败。