SQL Server RM スイッチ モジュール

SQL Server RM スイッチ モジュールのビルドに必要な情報を提供します。

SQL Server モジュールは、Microsoft Distributed Transaction Server (MS DTC) を利用して 2 フェーズ コミット サポートを提供し、このスイッチ モジュールを使用して行われたすべてのデータベース接続が必ず単一の XA トランザクションに参加するようにします。MSDTC は、クライアント マシンと、SQL Server がホストされているマシンの両方で実行されている必要があります。

ソース コード
SQL Server RM スイッチ モジュールの COBOL ソース ファイルである ESMSSQL.CBL は、デフォルトでは、%ProgramFiles(x86)%\Micro Focus\Enterprise Developer\src\enterpriseserver\xa ディレクトリに配置されています。
ビルド要件
SQL Server RM スイッチ モジュールをビルドするには、使用している Windows のバージョンのための Windows ソフトウェア開発キット (SDK) がインストールされている必要があります。

いくつかの OpenESQL 指令はプロセスベースであり、通常はデータベース接続を行うプログラムのコード内で設定する必要があります。

このスイッチ モジュールをビルドする前に、LIB 環境変数に Windows SDK LIB ディレクトリのパスが含まれていることを確認してください。

サービスをコンテナー管理アプリケーションとしてディプロイされた Enterprise Server で実行する場合は、プログラム ソースのコンパイル時ではなく RM スイッチ モジュールのコンパイル時に、適切な指令を指定する必要があります。詳細については、「範囲 - OpenESQL SQL コンパイラ指令オプション」のトピックで、プロセス ベースの OpenESQL 指令の一覧を参照してください。

スイッチ モジュールをビルドする
方法 1
  1. 管理者として、アプリケーションに応じて 32 ビットまたは 64 ビットの Enterprise Developer command promptを起動します。
  2. %ProgramFiles(x86)%\Micro Focus\Enterprise Developer\src\enterpriseserver\xa ディレクトリ (デフォルトの場所) に移動します。
  3. 次のように入力します。 build mssql [directives]
方法 2
  1. アプリケーションに応じて 32 ビットまたは 64 ビットのEnterprise Developer command promptを起動します。
  2. すべてのファイルを、%ProgramFiles(x86)%\Micro Focus\Enterprise Developer\src\enterpriseserver\xa ディレクトリ (デフォルトの場所) から、WRITE パーミッションがある任意の場所にコピーします。
  3. コピーしたファイルが含まれているディレクトリに移動します。
  4. 次のように入力します。 build mssql [directives]
ビルド出力
ビルド プロセスによって、ESSQLXA.CBL COBOL ソース ファイルから、バイナリ形式の次の 2 つのスイッチ モジュール ファイルが生成されます。
バイナリ ファイル タイプ
ESSQLXA.DLL 静的
ESSQLXA_D.DLL 動的

You can register an RM switch module with Enterprise Server dynamically, or register it statically depending on which binary file you use. We recommend that you use the dynamic switch module option, as this ensures that only active databases used in the global transaction participate in the TM/RM XA flow.

追加リソース
xa_open 文字列定義や MSDTC の詳細など、SQL Server RM スイッチ モジュールの使い方の詳細については、「SQL Server xa_open 文字列」を参照してください。