当我运行以下查询时,
select timestamp '01-01-2017 00:00' log_time from dual
我收到此错误
ORA-01847:月中的某一天必须在1月到最后一天之间。
如果无效,如何在oracle中声明timestamp
数据类型?
答案 0 :(得分:3)
如果您使用的是ANSI时间戳文字,则必须使用ISO样式格式化值yyyy-mm-dd hh24:mi:ss:
select timestamp '2017-01-01 00:00:00' log_time
from dual;
如果您想保留该格式,请使用Oracle的to_timestamp()
功能:
select to_timestamp('01-01-2017 00:00', 'dd-mm-yyyy hh24:mi') log_time
from dual