自動コミット モード
自動コミット モードでは、 すべてのデータベース操作は、実行時にコミットされるトランザクションです。 このモードは、1 つの SQL ステートメントで構成される多くの実際のトランザクションに適しています。 これらのトランザクションを区切ったり、完了を指定したりする必要があります。 トランザクションがサポートされていないデータベースでは、自動コミット モードのみがサポートされるモードです。 このようなデータベースでは、ステートメントは実行時にコミットされ、ロールバックする方法はありません。したがって、これらは常に自動コミット モードです。
基になる DBMS が自動コミット モード トランザクションをサポートしていない場合、ドライバーは、各 SQL ステートメントの実行時に手動でコミットすることで、それらをエミュレートできます。
SQL ステートメントのバッチが自動コミット モードで実行される場合、バッチ内のステートメントがコミットされるときにデータ ソース固有になります。 これらは、実行時にコミットすることも、バッチ全体が実行された後に全体としてコミットすることもできます。 一部のデータ ソースでは、これらの両方の動作がサポートされ、いずれかを選択する方法が提供される場合があります。 特に、バッチの途中でエラーが発生した場合、既に実行されているステートメントがコミットされるかロールバックされるかはデータ ソース固有です。 したがって、バッチを使用し、バッチをコミットまたはロールバックする必要がある相互運用可能なアプリケーションは、バッチを手動コミット モードでのみ実行する必要があります。