admin

将TIME插入Oracle SQL的DATE字段

sql

无论如何,是否只有时间(无日期)插入到“日期”类型的SQL字段中?

我尝试插入:

13:00

01:00

13:00pm

01:00pm

但是,请继续获取错误:

Not A Valid Month

阅读 142

收藏
2021-06-07

共1个答案

admin

问题是字面意义。对于日期/时间值,Oracle期望格式为ddMMMyyyy。(或者,您可以使用表达式DATE '2001-01-01此处将说明字面值。)对于没有日期的时间,似乎没有默认格式。

换句话说,您可能会遇到相同的错误cast('1/1/2001' as date)

而是使用以下to_date()函数:

select to_date('10:00', 'hh:mi')
from dual

这为您提供了更多的格式灵活性。

另外,正如Ben在评论中指出的那样,这将为您提供当前日期和指定的时间。

2021-06-07