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

Railsトランザクション

    明示的なトランザクションを必要とするコードと自動コミットに依存できるコードが混在している場合は、すべての接続で自動コミットを無効にしないでください。これが他のコードに影響を与えるかどうか疑問に思っています。自動コミットを無効にしても、他のコードが作業をコミットするためにコミットする必要があることを認識していない場合、それは問題になります。コミットされていない作業は、接続が閉じられるとロールバックされます。

    MySQLのデフォルトのストレージエンジンは MyISAM 、トランザクションをまったくサポートしていません。 MyISAMを使用するテーブルに変更を加えると、トランザクションの開始と終了の明示的な要求に関係なく、また自動コミットの状態に関係なく、変更はすぐに効果的にコミットされます。したがって、 InnoDB ストレージエンジン(または BDB

    不要 です MySQLでトランザクションを使用するために自動コミットモードを無効にします。トランザクションを明示的に開始するだけです。次のSQLステートメントは、現在の接続でのautocommitの値に関係なく、トランザクションをコミットまたはロールバックするまでトランザクションの一部になります。

    http://dev.mysql.com/doc/refman/5.0 /en/commit.html 言う:



    1. AWS上のWindowsでのShareplex入門、パート2

    2. 明確な値をすばやく見つける

    3. Mysqlは最新の2つの日付でアイテムを注文します

    4. リモートホストからpostgresに接続できません