ORAエラー

[ORAエラー] ORA-00913: 値の個数が多すぎます

投稿日:2023年4月14日 更新日:

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

(日本語)
ORA-00913: 値の個数が多すぎます
(英語)
ORA-00913: too many values

発生パターン

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

  • INSERT文で、指定した値の個数が列数より多い
エラー例1
SQL> INSERT INTO M_USER (ID, NAME, AGE) VALUES ('99', 'Taro', 25, 'Osaka'); INSERT INTO M_USER (ID, NAME, AGE) VALUES ('99', 'Taro', 25, 'Osaka'); * 行1でエラーが発生しました。: ORA-00913: 値の個数が多すぎます。

値'Osaka' に対応する列が存在しないためエラーが発生しています。

エラー例2
SQL> SELECT * FROM M_ITEM WHERE CD IN (SELECT CD FROM M_ITEM2); SELECT * FROM M_ITEM WHERE CD IN (SELECT CD FROM M_ITEM2); * 行1でエラーが発生しました。: ORA-00913: 値の個数が多すぎます。

IN句に指定する値の上限は1000個です。それを超えるとORA-00913が発生します。

対処法

  • INSERT句では列数に合わせた値を指定する
  • IN句では、値が1000個以下となるようにする

関連記事


スポンサーリンク

スポンサーリンク

-ORAエラー

執筆者:



comment

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

スポンサーリンク