ORACLE機能 ORAエラー

[ORAエラー] ORA-00936: 式がありません

投稿日:2017年10月29日 更新日:

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

(日本語)
ORA-00936: 式がありません
(英語)
ORA-00936: Missing Expression

発生パターン

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

  • SQL文のwhereに続く条件が無い
  • SELECT文やCREATE文に不要なカンマ(,)が含まれているなど構文がおかしい
  • テーブル名やカラム名に予約語を使用している場合、そのテーブル名やカラム名をダブルクォーテーションで囲っていない
エラー例1
SQL> select * from m_test where; select * from m_test where * 行1でエラーが発生しました。: ORA-00936: 式がありません。

whereに続く条件が抜けています。

エラー例2
SQL> select col1, col2, from m_test; select col1, col2, from m_test * 行1でエラーが発生しました。: ORA-00936: 式がありません。

col2の直後に不要なカンマが付いているので、削除すればOKです。

エラー例3
SQL> select ,col1, col2 from m_test; select ,col1, col2 from m_test * 行1でエラーが発生しました。: ORA-00936: 式がありません。

col1の直前に不要なカンマが付いているので、削除すればOKです。

対処法

  • SQL文に不要なカンマが含まれていないか確認する
  • SQL文の構文が正しいか確認する

スポンサーリンク

スポンサーリンク

-ORACLE機能, ORAエラー

執筆者:


comment

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

関連記事

ORACLE

[ORACLE] ユーザをロック状態にする

明示的にユーザをロック状態にするサンプルです。 サンプル 例)ユーザ「taro」をロック状態にする SQL*Plus S ...
ORACLE

[ORACLE] SYNONYM(別名)を作成する

シノニムは、テーブルやストアドなどのオブジェクトに付けた別名のことです。 シノニムを作成すると、シノニム名でオブジェクト ...
ORACLE

[ORACLE] テーブル名やカラム名に予約語を使う

テーブル名やカラム名には通常、予約語(SELECTとかINSERTなど)は使用できませんが、ダブルクォーテーションで囲う ...
ORACLE

[ORAエラー] ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。

以下のように表示されます。 (日本語) ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました ...
ORACLE

[SQL*Plus] DBMS_OUTPUTからの出力を有効/無効にする(set serveroutput)

DBMS_OUTPUTからの出力を有効/無効にするには、「serveroutput」システム変数を使用します。 構文 ( ...

スポンサーリンク