TRANSACTION

これは OpenESQL にランタイム トランザクションを管理するための仕様を提供するための指令で、場合によってはコンパイル時のチェックも可能にします。

構文:

TRANSACTION={GLOBAL | LOCAL | MIXED | AUTO}

パラメーター:

GLOBAL Java アプリケーション サーバーなどの分散トランザクション マネージャー、およびその外部 SQL 接続を介して、トランザクションを管理します。

Java アプリケーション サーバーのアプリケーションとの互換性がない次の文をチェックします。

  • BEGIN TRANSACTION
  • COMMIT
  • CONNECT
  • DISCONNECT
  • ROLLBACK
  • SET AUTOCOMMIT
  • SET CONNECT
  • SET TRANSACTION [ISOLATION]

互換性のない文が見つかるたびにエラーをレポートします。

LOCAL データ ソースおよびその OpenESQL 接続を介して、トランザクションを管理します。
MIXED 分散トランザクション マネージャーを介してトランザクションを管理しますが (GLOBAL と同様)、コンパイル時のチェックは行いません。これにより、EXEC SQL CONNECT 文で、分散トランザクション マネージャーによって提供される接続に加えて、OpenESQL 接続を使用して、ローカル トランザクションを作成できます。
AUTO

このオプションは、OpenESQL 接続で実行される各文を AUTOCOMMIT (オートコミット) する場合に使用します。

  • アプリケーションでは、EXEC SQL SET AUTOCOMMIT 文を実行することによって、接続のオートコミット設定をプログラムで制御できます。
  • オートコミット モードのアプリケーションでは、EXEC SQL BEGIN TRANSACTION 文によって、ローカル データベース トランザクションを開始できます。トランザクションは、次の COMMIT 文または ROLLBACK 文が実行されると終了します。
  • トランザクションが終了すると、接続のオートコミット属性が有効の場合、接続はオートコミット モードに戻ります。それ以外の場合は、新しいローカル データベース トランザクションが自動的に開始されます。

プロパティ:

デフォルト: TRANSACTION=LOCAL

範囲:

コンパイル時の使用: あり
実行時の動作: なし

詳細については、「範囲 - OpenESQL SQL コンパイラ指令オプション」を参照してください。