【发布时间】:2015-02-22 15:04:28
【问题描述】:
我正在使用 Oracle SQL,但我遇到了日期问题。
我有一个很长的脚本,其中包含许多 Insert 命令,例如:
Insert into MyTable
(TIME,CROSS,BID,ASK)
values (to_timestamp('13-NOV-14 03.38.27.785000000 PM','DD-MON-RR HH.MI.SSXFF AM'),'USD/CHF',0.96294,0.963);
但是,我收到以下错误:
ORA-01843 - "not a valid month"
这是 sysdate 格式:
22-FEB-15 04.57:18
我尝试了以下命令,但出现格式错误:
alter session set nls_date_format = 'DD-MON-RR HH.MI:SSXFF';
我该如何解决这个问题? 另外,我想将这些日期转换为以下格式:
DD/MM/YYYY HH24:MI:SS.miliseconds
这种转换可以在插入命令中吗?
请指教
【问题讨论】:
-
I built an SQLFiddle for your problem,在您的问题中运行 INSERT 语句,发现它运行良好。因此,这似乎是您系统本地的问题。鉴于错误,我猜测您的数据库可能正在使用月份名称不是英文月份名称的语言环境,但正如我所说,这只是一个猜测。祝你好运。
标签: sql oracle sql-timestamp