DB2® パッケージへの SQL ステートメントのバインド方法を決定するオプションを指定するには、Default.bindProps ファイルを使用します。
このファイルをワークベンチのエディターで開くには、ダブルクリックします。このファイルは、Java プロジェクト内の pureQueryFolder フォルダーに置かれています。
このファイルでは、プロジェクト内のすべての pureQueryXML ファイルに適用されるオプションを指定できます。
個々の pureQueryXML ファイルに固有のオプションも指定できます。
このファイルにはコメントを追加できます。
各コメントの先頭には # 記号を付けます。
項目を作成または編集するときに支援が必要な場合は、CTRL+SPACE キー (このデフォルトのキー・ストロークを変更した場合には独自のキー・ストローク) を押すことができます。
構文図を理解する上で役立つ情報については、構文図の読み方を参照してください。
以下の図は、このファイル内のデフォルト・オプションの設定に使用できる構文を示しています。

>>-defaultOptions--=--+- -bindOptions-- -"--bind-options--"-+--->
| (1) |
'-| DBRM options |--------------------'
>--+-----------------------------+--+----------------+---------->
| .-FALSE-. | | (2) |
'- -differenceOnly--+-TRUE--+-' '-| -grant |-----'
>--+-----------------------+-----------------------------------><
| (3) |
'-| Trace options |-----'
注:
- 構文については、以下のオプションの説明を参照してください。
- 構文については、このオプションの説明を参照してください。
- 構文については、以下のオプションの説明を参照してください。
次の構文図は、このファイルでリストされた個々の pureQueryXML ファイルに対するオプションの設定で許可される構文を示します。

>>-+-pureQueryXML-file-----------------------+--=--------------->
'-pureQueryXML-file--:--base-package-name-'
>--+- -bindOptions-- -"--bind-options--"-+---------------------->
| (1) |
'-| DBRM options |--------------------'
>--+-----------------------------+--+----------------+---------><
| .-FALSE-. | | (2) |
'- -differenceOnly--+-TRUE--+-' '-| -grant |-----'
注:
- 構文については、以下のオプションの説明を参照してください。
- 構文については、このオプションの説明を参照してください。
- -bindOptions "string-of-bind-options"
- これらのオプションには、同名の DB2 プリコンパイル・オプションおよびバインド・オプションと同じ機能があります。
ストリングの構文は、"option_1 value_1 option_2 value_2" です。
これらのオプションのリストおよび説明については、BIND コマンドを参照してください。
- DB2 for Linux, UNIX,
and Windows バージョン 9.7 で CONCURRENTACCESSRESOLUTION バインド・オプションを使用した場合には、
CS および RR 分離レベルでバインドされているパッケージ内のすべてのステートメントにオプションが適用されます。
これらの 2 つの分離レベルにのみ適用されるこのオプションによって、アプリケーションは、他のアプリケーションがロックした行内で、最後にコミットされた値を検出できます。
- DBRM options
- パッケージを作成するのではなく DBRM ファイルを生成する場合は、これらのオプションを使用します。
これらのオプションは、DB2 for z/OS® を使用している場合にのみ適用されます。
StaticBinder ユーティリティーで DBRM ファイルが生成された後に、それらのファイルをデータ・セットにコピーする必要があります。デフォルトの DBRM データ・セット名は prefix.DBRMLIB.DATA です。ここで prefix は、ユーザーの TSO プロファイルで指定された高位修飾子です。通常、prefix は TSO におけるユーザー ID です。
DBRM データ・セットがまだ存在しない場合は、それを作成する必要があります。
DBRM データ・セットには、すべての SQL ステートメントを保持するスペースと、各ホスト変数名とヘッダー情報用の追加スペースが必要です。
ヘッダー情報の概算として、DBRM ごとに 2 つのレコード、SQL レコードごとに 20 バイト、ホスト変数ごとに 6 バイトが必要です。
DBRM の厳密なフォーマットについては、DBRM マッピング・マクロである、ライブラリー prefix.SDSNMACS の DSNXDBRM を参照してください。
以下の構文図は、DBRM ファイルを生成するためのオプションを記述しています。

.-FALSE-.
>>- -generateDBRM--+-TRUE--+-- -outputDBRMPath--path-----------><
- -generateDBRM TRUE|FALSE
- パッケージを作成する代わりに DBRM ファイルを生成するかどうかを指定します。
generateDBRM が TRUE である場合には、
デフォルトでは、StaticBinder ユーティリティーによって、CS、RR、RS、UR の各分離レベルごとに 1 つずつ、合計 4 つの DBRM ファイルが生成されます。
ただし、-isolationLevel オプションを指定した場合には、DBRM ファイルは 1 つしか生成できません。
生成された DBRM ファイルのルート名は、構成ユーティリティーの実行時に指定したルート・パッケージ名です。
デフォルトは FALSE です。
- -outputDBRMPath path
- 生成された DBRM ファイルを保存するディレクトリーを指定します。
デフォルト値は、StaticBinder ユーティリティーの実行元のディレクトリーです。
- defaultOptions
- このファイルにリストされているすべての pureQueryXML ファイルに入っている SQL ステートメントにこの行のオプションが適用されることを指定します。
このキーワードで始めることができるのは、ファイル内で 1 行だけです。
- -differenceOnlyTRUE|FALSE
- StaticBinder ユーティリティーの実行対象の pureQueryXML ファイル内の対応するステートメント・セットのコレクション名、パッケージ名、および整合性トークンの値と一致するものを持つ DB2 パッケージを置き換えないことを指定します。
例えば、capture.pdqxml という名前の pureQueryXML ファイルに対して StaticBinder ユーティリティーを実行するとします。
このユーティリティーにより、パッケージ MYPKGA、MYPKGB、および MYPKGC が作成されます。
その後、capture.pdqxml 内のステートメント・セット MYPKGA を変更し、このファイルに対して、-cleanConfigure オプションを指定して (値はそのデフォルト値である FALSE を使用) 構成ユーティリティーを実行します。
セットが変更されたため、構成ユーティリティーは新規の整合性トークンをステートメント・セットに割り当てます。
MYPKGA の新しいバージョンをバインドするために capture.pdqxml に対して再び StaticBinder ユーティリティーを実行する際には、-differenceOnly TRUE を指定します。
ユーティリティーは MYPKGA のみを再バインドし、他の 2 つのパッケージの再バインドは行いません。
- デフォルト値は FALSE です。
- -grant "grantees(firstID,secondID,...)"
- StaticBinder ユーティリティーが作成するパッケージに対する EXECUTE 特権を付与する対象の被認可者を括弧内にコンマで区切って示したリストを指定します。
このオプションを指定しなければ、StaticBinder ユーティリティーはこの特権を付与しません。

.-,--------------------.
V |
>>- -grant-- "--grantees--(----+-authorization-ID-+-+--) - "---><
'-PUBLIC-----------'
- grantees
- EXECUTE 特権を付与する対象の許可 ID のコンマ区切りリスト。
リストする許可 ID は必ず、使用する DB2 データベースで有効なものにしてください。
DB2 Database for Linux, UNIX, and Windows の場合: USER、GROUP、および ROLE キーワードを使用できます。
これらのキーワードについては、GRANT (パッケージ特権) ステートメントを参照してください。
DB2 for z/OS の場合: ROLE キーワードを使用できます。
このキーワードについては、GRANT (パッケージ特権) を参照してください。
制約事項:
- -generateDBRM オプションの値が TRUE である場合には、-grant オプションは使用できません。
- オプション・ファイルでは、-grant は、defaultOptions 行、またはファイル内の 1 つ以上の個々の項目のいずれかで使用できます。
単一のオプション・ファイルの両方のロケーションで -grant を使用することはできません。
- -isolationLevel CS|RR|RS|UR
- 4 つの分離レベルごとに 1 つずつ DB2 パッケージまたは DBRM ファイルを生成するのではなく、特定の分離レベル用の単一の DB2 パッケージまたは DBRM ファイルを生成することを指定します。
分離レベルは、パッケージ内のすべての SQL ステートメントに適用されます。
IBM® Data Server Driver
for JDBC and SQLJ の Connection.setTransactionIsolation() メソッドを使用して分離レベルを設定した場合は、pureQuery は静的に実行されたステートメントの分離レベルを無視します。
- UR
- 分離レベルとして非コミット読み取りを指定します。
- StaticBinder ユーティリティーは、ジェネレーター・ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 1 を加えます。
- StaticBinder ユーティリティーは、構成ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 1 を加えます。
- CS
- 分離レベルとしてカーソル固定を指定します。
- StaticBinder ユーティリティーは、ジェネレーター・ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 2 を加えます。
- StaticBinder ユーティリティーは、構成ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 2 を加えます。
- RS
- 分離レベルとして読み取り固定を指定します。
読み取り固定では、アプリケーションによって読み取りおよび変更される行に関し、パッケージ内の SQL ステートメントの実行が、他のアプリケーション・プロセスから確実に分離されます。
- StaticBinder ユーティリティーは、ジェネレーター・ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 3 を加えます。
- StaticBinder ユーティリティーは、構成ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 3 を加えます。
- RR
- 分離レベルとして反復可能読み取りを指定します。
- StaticBinder ユーティリティーは、ジェネレーター・ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 4 を加えます。
- StaticBinder ユーティリティーは、構成ユーティリティーを実行したときに -forceSingleIsolationLevel オプションを使用していない限り、作成されたパッケージまたは DBRM ファイルの名前に 4 を加えます。
- pureQueryXML-file
- pureQueryXML ファイルに入っている SQL ステートメントにのみ、オプション・ファイルのこの行のオプションが適用されることを指定します。これらのオプションは、デフォルトとして指定したオプションをオーバーライドします。
- このファイルの名前の末尾は、.pdqxml または .xml のいずれかの拡張子にする必要があります。
ファイルは、アプリケーションのクラスパス内のリソースでなければなりません。
- Trace options
- メッセージのログを記録するファイルおよびログを記録する情報のレベルを指定できます。

>>-+------------------------+--+---------------------------+---><
'- -traceFile--file-name-' | .-OFF-----. |
'- -traceLevel--+-ALL-----+-'
+-SEVERE--+
+-WARNING-+
+-INFO----+
+-CONFIG--+
+-FINE----+
+-FINER---+
'-FINEST--'
- -traceFile file-name
- 操作に関する情報のログを記録するために使用するファイルへの絶対パスまたは相対パスとファイル名を指定します。
- ファイルが既に存在する場合には、pureQuery は、ファイルの既存の内容に新しいメッセージを追加します。デフォルトでは、項目は System.err に書き込まれます。
- -traceLevel OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL
- ログに記録する情報のタイプを指定します。
デフォルトのレベルは OFF です。ログ項目を書き込むファイルを指定せず、このオプションを OFF 以外の値に設定した場合、項目は「コンソール」ビューに書き込まれます。