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

SELECT FORUPDATEを使用する理由

    SELECT ... FOR UPDATE トランザクションが完了する(コミットまたはロールバックされる)まで、書き込み(排他的)ロックでレコードをロックします。

    レコードを選択し、更新するまで変更されないようにするには、トランザクションを開始し、SELECT ... FOR UPDATEを使用してレコードを選択します。 、いくつかのクイック処理を実行し、レコードを更新してから、トランザクションをコミット(またはロールバック)します。

    SELECT ... FOR UPDATEを使用する場合 トランザクションの外部(自動コミットオン)でも、ロックはすぐに解放されるため、必ずトランザクションを使用してロックを保持してください。

    パフォーマンスのために、トランザクションを長時間開いたままにしないでください。更新はすぐに実行する必要があります。




    1. 重複するWordpressコメントを削除するMysqlクエリ?

    2. SQL Serverは、コンポーネント「OleAutomationProcedures」のプロシージャ「sys.sp_OACreate」へのアクセスをブロックしました

    3. 再帰的にSequelizeを含めますか?

    4. 雄弁な多対多対多対多-遠い関係を簡単にロードする方法