デフォルトではないオプションの動作を可能にします。
重要: Enterprise Developer 2.2 Update 1 から始まった OPTION は、下位互換性のためにサポートされていますが、非推奨です。代わりに同等の HCOSS SQL コンパイラ指令オプションを使用してください。
構文:
OPTION={[NO]RSLOCATORS | CHECKCALLPARAMS | SQLCLRTRANS}...
パラメーター:
- RSLOCATORS
- .NET アプリケーションのみ。COBOL 以外のクライアント アプリケーションが、メインフレームから移行されており SQL(DIALECT=MAINFRAME) を使用する COBOL ストアド プロシージャから結果セットを読み込めるようになります。WITH RETURN TO CALLER として宣言されるカーソルは、シミュレートされたメインフレームの結果セット ロケーターではなくデフォルトの SQL Server 結果セットを戻します。デフォルトは RSLOCATORS です。RSLOCATORS を使用するには、DBMAN=ADO を設定する必要があります。
- CHECKCALLPARAMS
- パラメーターが入力または出力のいずれかを判断するために、ストアド プロシージャ呼び出しのパラメーターを評価します。DIALECT=MAINFRAME によって自動的に設定されます。
- SQLCLRTRANS
- クライアント アプリケーションとストアド プロシージャ両方をビルドするとき、COMMIT と ROLLBACK を SQL Server の SAVEPOINT 操作に置き換えることでメインフレームの動作をエミュレートします。ストアド プロシージャが SPCOMMITONRETURN によってビルドされている場合を除き、ストアド プロシージャが呼び出し元のアプリケーションに返されると非コミットの処理はロールバックされます。呼び出し元のアプリケーションが COMMIT または ROLLBACK を実行するまで、データベースのロックは解除されません。
注: クライアント アプリケーションが COBOL または PL/I 以外の言語で記述されている場合、そのアプリケーションはトランザクションの開始ごと (すべての COMMIT または ROLLBACK 文の後など) および AUTOCOMMIT をオフにするとき、SQL Server 文
save transaction MF__SAVEPOINT を実行する必要があります。
依存性:
DIALECT=MAINFRAME は自動的に CHECKCALLPARAMS を設定します。
範囲:
コンパイル時の使用: |
あり |
実行時の動作: |
ソース ファイル |
詳細については、範囲 - HCOSS SQL コンパイラ指令オプションを参照してください。
コメント:
OPTION の各インスタンスはスペースで区切ります。
例:
SQL(OPTION=CHECKCALLPARAMS OPTION=NORSLOCATORS)