BIND コマンドと PRECOMPILE コマンドの OWNER オプションは、 パッケージの許可 ID を定義します。
BIND コマンドと PRECOMPILE コマンドの QUALIFIER オプションは、 パッケージに含まれる未修飾オブジェクトの暗黙修飾子を指定します。
BIND コマンドと PRECOMPILE コマンドの DYNAMICRULES オプションは、 動的 SQL ステートメントを実行時に処理するときに、 実行時の規則である DYNAMICRULES RUN とバインド時の規則である DYNAMICRULES BIND のどちらを適用するかを決定します。 これらの規則は、許可 ID として使用する値の設定と、 動的 SQL ステートメントに含まれる未修飾オブジェクト参照の暗黙修飾子として使用する値の設定を示します。 DYNAMICRULES オプションには、以下の表に示されている作用があります。
表 1. OWNER および QUALIFIER が影響を与える静的 SQL の特性
機能 | OWNER だけが指定された場合 | QUALIFIER だけが指定された場合 | QUALIFIER と OWNER の両方が指定された場合 |
---|---|---|---|
使用される許可 ID | BIND コマンドの OWNER オプションに指定されたユーザーの ID | パッケージをバインドするユーザーの ID | BIND コマンドの OWNER オプションに指定されたユーザーの ID |
使用される未修飾オブジェクトの修飾値 | BIND コマンドの OWNER オプションに指定されたユーザーの ID | BIND コマンドの QUALIFIER オプションに指定されたユーザーの ID | BIND コマンドの QUALIFIER オプションに指定されたユーザーの ID |
表 2. DYNAMICRULES、OWNER、および QUALIFIER が影響を与える動的 SQL の特性
機能 | RUN | BIND |
---|---|---|
使用される許可 ID | パッケージを実行するユーザーの ID | パッケージに適用される許可 ID |
使用される未修飾オブジェクトの修飾値 | CURRENT SCHEMA 特殊レジスター | パッケージに適用される許可 ID |
DYNAMICRULES オプションを使用するときは、以下の点を考慮してください。