sql >> データベース >  >> RDS >> Mysql

COMMITTRANSACTIONに達しない場合の自動ロールバック

    いいえ、エラーが発生してもトランザクションはロールバックされません。ただし、このポリシーを適用するクライアントアプリケーションを使用している可能性があります。

    たとえば、mysqlコマンドラインクライアントを使用している場合、通常、エラーが発生すると実行を停止し、終了します。トランザクションの進行中に終了すると、トランザクションはロールバックされます。

    独自のアプリケーションを作成する場合、ロールバックのポリシーを制御できますが、いくつかの例外があります。

    • 終了(つまり、データベースからの切断)は、常に進行中のトランザクションをロールバックします
    • デッドロックまたはロック待機タイムアウトにより、暗黙的にロールバックが発生します

    これらの条件を除いて、エラーを生成するコマンドを呼び出すと、エラーは通常どおり返され、トランザクションのコミットを含め、好きなことを自由に行うことができます。



    1. フラスコで自動インクリメントの主キーを作成できません-sqlalchemy

    2. SQL Server(T-SQL)でサポートされているタイムゾーンのリストを取得する

    3. codeigniterを使用してデータベース内のアクティブなレコードを削除する方法

    4. codeigniter-データベース:単一の更新クエリで複数のテーブルを更新する方法