私は単純に sql*plus のテーブルに接続し、テーブルに行を挿入するスクリプトを持っています。
以下のようにエラーを投げています。
SP2-0552: Bind variable "BIND" not declared
挿入しようとしているクエリ内のバインド変数が何であるかを正確に把握できません。
次のような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;