ORACLE機能 ORAエラー

[ORAエラー] ORA-01861: リテラルが書式文字列と一致しません

投稿日:

以下のように表示されます。

(日本語)
ORA-01861: リテラルが書式文字列と一致しません
(英語)
ORA-01861: literal does not match format string

発生パターン

このエラーは以下のような場合に発生します。

  • 指定したフォーマット形式が、値とミスマッチである。
エラー例1
SQL> select to_date('2018/12/31 10:20:30') from dual; select to_date('2018/12/31 10:20:30') from dual * 行1でエラーが発生しました。: ORA-01861: リテラルが書式文字列と一致しません

to_dateをto_timestamp にするか、10:20:30を削除すればOKです。

エラー例2
SQL> select to_date('2018/12/31', 'hh24:mi:ss') from dual; select to_date('2018/12/31', 'hh24:mi:ss') from dual * 行1でエラーが発生しました。: ORA-01861: リテラルが書式文字列と一致しません

第2引数を 'yyyy/mm/dd' にすればOKです。

対処法

  • 値に合ったフォーマット形式を指定する

備考

  • TO_DATE、TO_TIMESTAMPはフォーマット形式を指定しないとデフォルトの日付フォーマット形式が使用されます。
    デフォルトの日付フォーマットは以下SQLで確認できます。


スポンサーリンク

スポンサーリンク

-ORACLE機能, ORAエラー

執筆者:



comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

スポンサーリンク