このステートメントは、1 つまたは複数の接続を解放保留状態にします。
呼び出し
対話式 SQL 機能には外見上対話式の実行に見えるインターフェースが用意されている場合がありますが、 このステートメントはアプリケーション・プログラムに組み込むことだけが可能です。 これは、動的に準備できない実行可能ステートメントです。
許可
必要ありません。
構文
(1) >>-RELEASE----+-server-name------+----------------------------->< +-host-variable----+ +-CURRENT----------+ | .-SQL-. | '-ALL-+-----+------'
注:
説明
host-variable (ホスト変数) を指定する場合、 それは、長さ属性が 8 以下の文字ストリング変数でなければならず、標識変数を含めることはできません。 その host-variable に入っている server-name は、 左寄せする必要があり、引用符で区切ることはできません。
server-name は、 アプリケーション・サーバーを指定するデータベース別名である点に注意してください。 この名前は、アプリケーション・リクエスターのローカル・ディレクトリーにリストされている必要があります。
指定されたデータベース別名、またはホスト変数に含まれているデータベース別名は、 そのアプリケーション・プロセスの既存の接続を指定するものでなければなりません。 データベース別名が既存の接続を指定していない場合、エラー (SQLSTATE 08003) になります。
注
例
例 1: IBMSTHDB への SQL 接続は、アプリケーションではもはや必要でなくなりました。 以下のステートメントを実行すると、 次のコミット操作の過程でその接続が破棄されることになります。
EXEC SQL RELEASE IBMSTHDB;
例 2: 現行の接続は、アプリケーションでもはや必要でなくなりました。 以下のステートメントを実行すると、 次のコミット操作の過程でその接続が破棄されることになります。
EXEC SQL RELEASE CURRENT;
例 3: アプリケーションがコミット後にデータベースにアクセスする必要がなく、 実行はしばらく継続する場合、不必要に接続を続けないようにした方が得策です。 コミット時にすべての接続が破棄されるようにするために、 コミット前に次のステートメントを実行できます。
EXEC SQL RELEASE ALL;