web-dev-qa-db-ja.com

ORA-00900:SQL文が無効です-Oracle 10gでプロシージャを実行すると

Oracle 10gデータベースを使用しており、SQLコマンドを使用してプロシージャを実行しようとしています。

create or replace procedure "exam" is
begin
  DBMS_OUTPUT.PUT_LINE('Test');
end;

次に、「実行」ボタンをクリックします。 「プロシージャが作成されました」と表示されます。

次を使用して実行しようとすると:

execute exam;

[実行]ボタンをクリックすると、次のように表示されます。

ORA-00900: invalid SQL statement

ご協力いただきありがとうございます。

14
kumar

質問の詳細に気づいただけです。 runボタンを押します。したがって、IDEを使用する必要があります。

IDEではexecuteを使用できません-sql*plusコマンド。それはmight Oracle SQL Developerで動作しますが、とにかくそこでは使用しません。

試して

begin
  exam;
end;
19
be here now

名前を二重引用符で囲みます。オラクルでは悪い習慣です。

1
David Aldridge

参照: C#でODBCを使用してOracleパッケージを呼び出そうとしたときの構文エラー

コマンドの前に「{」と「}」を置く必要があります。例:

    processListCmd.CommandType = CommandType.StoredProcedure;
    processListCmd.CommandText = "{ call rep_invnr_proclist }";
    processListCmd.ExecuteNonQuery();
1
Michael Kremser