1

私は単純に sql*plus のテーブルに接続し、テーブルに行を挿入するスクリプトを持っています。

以下のようにエラーを投げています。

SP2-0552: Bind variable "BIND" not declared

挿入しようとしているクエリ内のバインド変数が何であるかを正確に把握できません。

4

1 に答える 1

4

次のようなSQLを実行しようとしています:

SELECT 1 FROM DUAL WHERE :BIND = 1;

SQL*Plus:BINDはバインド変数として識別しますが、セッションでまだ宣言していません。バインド変数を宣言するには、VAR(IABLE)コマンドを使用します。

VAR BIND NUMBER

次に、変数に値を割り当てることができます。

EXEC :BIND := 1

を再度実行しselectて、バインド変数が設定されていることを確認します。この変数を使用して、単一行クエリの結果を保持することもできます。

SELECT 1 INTO :BIND FROM DUAL;
于 2009-11-17T14:42:46.480 に答える