1. ホーム
  2. date

入力文字列全体を変換する前に、日付フォーマットの画像が終了する。

2022-02-12 12:24:28
ORA-01830:入力文字列全体を変換する前に、日付フォーマットの画像が終了します。
問題:varchar2型から日付型への変換処理
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' の長さより長いです。
解決方法: (substr()を使用)
to_date(substr(INVOICE_DATE,1,10),'yyyy-mm-dd')
このエラーは、次の例から簡単に分析することができます。
いずれも、to_date( param1 , パラメータ2 ) ------param1 の書式が param2 の書式と一致しません.

SELECT TO_DATE('2007/04/01 13:30:01','YYYY-MM-DD') A FROM dual.SELECT TO_DATE('2007/04/01 13:30:01','YYYY-MM-DD') A FROM DATA;
SELECT TO_DATE(SUBSTR('2007/04/01 13:30:01',1,10),'YYYY/MM/DD') B FROM dual;
SELECT SUBSTR('2007/04/01 13:30:01',1,10) FROM DUAL;