アプリケーションのコミット動作を制御する方法は、使用しているプログラミング・インタフェースによって異なります。オートコミットの実装は、インタフェースに応じて、クライアント側またはサーバ側で行うことができます。オートコミット実装の詳細を参照してください。
デフォルトでは、ADO.NET プロバイダはオートコミット・モードで動作します。明示的トランザクションを使用するには、SAConnection.BeginTransaction メソッドを使用します。Transaction 処理を参照してください。
デフォルトでは、OLE DB プロバイダはオートコミット・モードで動作します。明示的トランザクションを使用するには、ITransactionLocal::StartTransaction、ITransaction::Commit、ITransaction::Abort メソッドを使用します。
デフォルトでは、ODBC はオートコミット・モードで動作します。オートコミットを OFF にする方法は、ODBC を直接使用しているか、アプリケーション開発ツールを使用しているかによって異なります。ODBC インタフェースに直接プログラミングしている場合には、SQL_ATTR_AUTOCOMMIT 接続属性を設定してください。
デフォルトでは、JDBC はオートコミット・モードで動作します。オートコミット・モードを OFF にするには、次に示すように、接続オブジェクトの setAutoCommit メソッドを使用します。
conn.setAutoCommit( false ); |
デフォルトでは、Embedded SQL アプリケーションは手動コミット・モードで動作します。オートコミットを ON にするには、次の文を実行して chained データベース・オプション (サーバ側オプション) を Off に設定します。
SET OPTION chained='Off'; |
デフォルトでは、Open Client 経由で行われた接続はオートコミット・モードで動作します。この動作を変更するには、次の文を使用して、作業中のアプリケーションで chained データベース・オプション (サーバ側オプション) を On に設定します。
SET OPTION chained='On'; |
デフォルトでは、PHP はオートコミット・モードで動作します。オートコミット・モードを OFF にするには、sqlanywhere_set_option 関数を使用します。
$result = sasql_set_option( $conn, "auto_commit", "Off" ); |
sasql_set_optionを参照してください。
デフォルトでは、データベース・サーバは手動コミット・モードで動作します。オートコミットを ON にするには、次の文を実行して chained データベース・オプション (サーバ側オプション) を Off に設定します。
SET OPTION chained='Off'; |
クライアント側でコミットを制御するインタフェースを使用している場合、chained データベース・オプション (サーバ側オプション) がアプリケーションのパフォーマンスや動作に影響する場合があります。サーバの連鎖モードを設定することはおすすめしません。
オートコミットまたは手動コミット・モードの設定を参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |