Oracle 日期類型問題

1. 發生ORA-01830: 日期格式圖片在轉換整個輸入字符串之前 的錯誤信息

有幾種可能:

     1) 查詢的時候:

           select to_date(INVOICE_DATE,'yyyy-mm-dd') from tab; --INVOICE_DATE varchar2(30)
           提示 ORA-01830: 日期格式圖片在轉換整個輸入字符串之前結束 錯誤
           最後查的原因:INVOICE_DATE=‘2005-11-10 00:00:00’的長度大於格式化'yyyy-mm-dd'的長度
           解決方法
            1) . 使用substr()   to_date(substr(INVOICE_DATE,1,10),'yyyy-mm-dd')
            2).   修改查詢的格式 to_date(INVOICE_DATE,'yyyy-mm-dd hh:mi:ss')

    2)插入時候: INSERT INTO TEST2 (C1, C2,c3) VALUES (${v1},${v2},to_date(${v3},'yyyy-mm-dd'));oracle裏面不需要以“;”結尾。

    3) date類型不能包含秒以後的精度。 如日期:2010-01-01 20:02:20.0 解決方法:將日期秒以後的精度去除。

 

 發現另一個問題:
to_date('2011-4-1 0:00:00', 'yyyy-MM-dd hh:mi:ss') 提示是出錯的。 小時只能1-12
解決方法: to_date('2011-4-1 0:00:00', 'yyyy-MM-dd hh24:mi:ss')) 改爲24小時進制

 

發佈了32 篇原創文章 · 獲贊 6 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章