2014-04-04 166 views
-1

在SQL +中,我試圖插入一個包含年,月,日,星期幾,小時,分鐘和秒鐘的日期。除了一週中的一天之外,一切都如預期一樣。最初的INSERT語句排除一週中的一天,完美跑DATEFORMAT導致錯誤

insert into auctions 
values (To_Date('AUGUST 12, 2014 11:01:02','MONTH DD, YYYY HH:MI:SS')); 

然而,當我嘗試包括星期,我得到一個錯誤

insert into auctions 
values (To_Date('TUE AUGUST 12, 2014 11:01:02','WTXT MONTH DD, YYYY HH:MI:SS')); 

ORA-01820: format code cannot appear in date input format 

很顯然,我做錯事的日子,可能是WTXT的語法。目標是以三個字母的縮寫形式讓每週的一天。問題是什麼?

回答

2

您需要DY代表短日名稱插入:

insert into auctions 
values (To_Date('TUE AUGUST 12, 2014 11:01:02','DY MONTH DD, YYYY HH24:MI:SS')); 

的解釋是受到NLS設置,這可能是也可能不是你的問題。

日期時間格式模型元素列表in the documentationWTXT對我來說是新的;我認爲這是對W的抱怨,而不是進一步看,因爲周編號只在to_char()有效。

您可能還希望使用HH24而不是12小時制HH,因爲您沒有am/pm標記。

+0

工作,謝謝。 – Codarus

+0

@TechSavvySmurf - 更新爲使用HH24,這可能會搶佔未來的問題... –