Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » トランザクションと独立性レベル

 

トランザクション

SQL Anywhere では、文はトランザクションにまとめます。トランザクションをコミットすると、データベースの変更が永続的なものになります。データを変更すると、変更がトランザクションログに記録されます。変更は、COMMIT 文を入力するまでは永続的なものにはなりません。

トランザクションは次のいずれかのイベントで開始します。

  • データベースへの接続後、最初の文

  • トランザクションの終了後、最初の文

トランザクションは次のいずれかのイベントで完了します。

  • データベースの変更を確定する COMMIT 文

  • トランザクションで行われたすべての変更を取り消す ROLLBACK 文

  • オートコミットが実行される文。ALTER、CREATE、COMMENT、DROP など、データ定義文の大半は自動的にコミットを実行します。

  • データベースへの接続を解除すると、暗黙的なロールバックが実行されます。

  • ODBC と JDBC には各文の後で COMMIT 文を実行するオートコミットの設定があります。デフォルトでは、ODBC と JDBC のオートコミットの設定は ON にする必要があり、各文は単一のトランザクションとして処理されます。トランザクション設計機能を活用する場合は、オートコミットの設定を OFF にします。

  • chained データベースオプションを Off にしておくと、各文の後にオートコミットを実行したのと同様の処理が行われます。デフォルトでは、jConnect または Open Client アプリケーションを使用する接続では chained は Off に設定されています。

SQL Anywhere コンソールユーティリティ (dbconsole) を使用してデータベースに接続することで、未処理のトランザクションがある接続を決定できます。[接続] ウィンドウ枠を検査して、未処理のトランザクションがある接続を確認します。

 Interactive SQL のオプション
 トランザクションの開始タイミングの決定
 参照