Open PL/I のドライバ プログラム mfplx では、次の DB2 SQL プリプロセッサ オプションがサポートされています。
- -bind または -nobind
- バインド ファイルを作成するかどうかを決定します。-bindname オプションが使用されている場合は、このオプションでバインド ファイルの名前が指定されます。それ以外の場合は、接尾辞 .bnd が付けられた、入力ソース ファイルの名前がデフォルト名になります。
- -bindname b
- バインド ファイルが作成される場合は、バインド ファイル名を b に指定します。
- -block t
- 使用されるレコード ブロックのタイプを t に指定し、未確定カーソルの扱いを指定します。有効なタイプは次のとおりです。
unambig
|
FOR UPDATE OF として指定されておらず、静的 DELETE WHERE CURRENT OF 文が含まれておらず、さらに動的な文も含まれていない読み取り専用カーソルのみ、ブロック化が行われます。未確定カーソルは更新できます。
|
all
|
FOR UPDATE OF として指定されておらず、静的 DELETE WHERE CURRENT 文の実行対象でない読み取り専用カーソルのみ、ブロック化が行われます。未確定カーソルおよび動的カーソルは、読み取り専用として扱われます。
|
no
|
パッケージのどのカーソルに対しても、ブロック化は行われません。未確定カーソルは更新できます。
|
- -datetime d
- ホスト変数のストリング表現に、日付および時間フィールドが割り当てられた場合に使用される、日付および時間のフォーマットを決定します。使用できるフォーマットは、次のとおりです。
def
|
データベースの国コードに関連付けられた日付 / 時間フォーマットを使用します。これは、-datetime が指定されていない場合のデフォルトでもあります。
|
usa
|
米国向けの IBM 標準形式:
mm/ddlyyyy hh:mm xM (AM または PM)
|
eur
|
欧州向けの IBM 標準形式:
dd.mm.yyyy hh.mm.ss.
|
iso
|
国際標準化機構形式:
yyyy–mm–dd hh.mm.ss.
|
jis
|
日本工業規格形式:
yyyy–mm–dd hh:mm:ss.
|
loc
|
ローカル形式。必ずしも def と同じではありません。
|
- -db2
- DB2 バージョンの SQL が使用されることを指定します。
- -dbname d
- データベースの元の名前またはエイリアス名を指定します。このオプションは、指定されたデータベース d に対して SQL 文を処理するようにプリプロセッサに指示します。このオプションを省略した場合は、プリプロセッサはデフォルトのデータベースを使用します。デフォルトのデータベースは、環境変数 DB2DBDFT により指定されます。
- -E
- ユーザーが Open PL/I コンパイラを使用せずに、DB2 SQL プリプロセッサを実行できるようにします。-ppdb2 オプションが使用されている場合は、このオプションで指定されたファイルを使用して、プリプロセッサの出力が保存されます。それ以外の場合は、接尾辞 .pp2 が付けられた、入力ソース ファイルの名前がデフォルト名になります。このオプションは、SQL 文の構文およびセマンティクスを素早くチェックするのに便利です。
- -isolation I
- プログラムを実行する分離レベルを指定します。I の値は、次のようになります。
cs
|
カーソル安定性
|
rr
|
反復可能読み取り
|
ur
|
コミットされていない読み取り
|
- -optimize または -nooptimize
- -optimize を指定した場合、SQLDA 初期化は、ホスト変数を使用する SQL 文用に最適化されます。AUTOMATIC ホスト変数を使用している場合、またはプログラムの実行中にホスト変数のアドレスが変わる可能性があるその他の状況では、このオプションは指定しないでください。-nooptimize がデフォルトです。
- -plan または -noplan
- アクセス プランを作成するかどうかを決定します。
- -ppdb2 [f]
- DB2 SQL プリプロセッサの出力ファイルを指定します。これは、-E オプションを使用する場合に便利です。
- -sqltwop
- SQL 文で SQL ホスト変数を使用する前に、すべての SQL ホスト変数を宣言しておくことが、適切なプログラミング方法です。この方法が不可能な場合のために、-sqltwop により、ホスト変数が使用された後のホスト変数の宣言がサポートされています。これは、すべての宣言を検出する事前パスをソースに対して作成し、これに続けて残りの SQL 文を処理するためのセカンド パスを作成することで実現されています。通常は、このオプションを使用し、それにより追加のオーバーヘッドを発生させる必要はありません。