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

選択/更新または複数の選択の間で SQL Server がデッドロックする

    これは、選択によって 2 つの異なるインデックスがロックアウトされ、一方、更新によって同じインデックスが逆の順序でロックアウトされるために発生する可能性があります。最初のインデックスは、アクセスする必要があるすべての列をカバーしていないため、選択には 2 つのインデックスが必要です。インデックスのキー列を更新する場合、ロックを取得する必要があるため、更新には 2 つのインデックスが必要です。

    http://blogs.msdn.com/bartd/archive /2006/09/25/770928.aspx 素晴らしい説明があります。推奨される修正には、select が必要とするすべての列をカバーするインデックスの追加、スナップショット分離への切り替え、または select が通常は必要としない更新ロックの取得を明示的に強制することが含まれます。



    1. mySQLでの照合の不正な組み合わせ

    2. MySQLスキーマのほとんどのテーブルを切り捨てる方法はありますか?

    3. cygnusを使用してMySqlにデータを保存する方法は?

    4. Mysqliで結果を閉じるのはなぜですか