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

MySQLの競合状態を適切に回避する方法

    これを実現するには、何らかの方法でレコードをロックする必要があります。デフォルトで0に設定されているLockedBy列を追加します。

    誰かがボタンを押したら、次のようなクエリを実行します:

    UPDATEテーブルSETLockedBy=WHERE LockedBy=0およびid=;

    更新後、影響を受ける行を確認します(php mysql_affected_rows内)。値が0の場合、LockedBy列が0ではなく、他の誰かによってロックされているため、クエリが何も更新しなかったことを意味します。

    これがお役に立てば幸いです



    1. RMANコマンドがORA-00904で失敗する:「BS」。「GUID」:無効な識別子

    2. mysql_insert_idスレッドは安全ですか?

    3. ORACLE /SQLServerのマイナスと例外の違い

    4. T-SQLを使用してリンクサーバー上にテーブルを作成する2つの方法