Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SELECT FOR UPDATE mit SQL Server

Kürzlich hatte ich ein Deadlock-Problem, weil Sql Server mehr als nötig sperrt (Seite). Dagegen kann man eigentlich nichts machen. Jetzt fangen wir Deadlock-Ausnahmen ab ... und ich wünschte, ich hätte stattdessen Oracle.

Bearbeiten:Wir verwenden inzwischen die Snapshot-Isolation, die viele, aber nicht alle Probleme löst. Um die Snapshot-Isolation verwenden zu können, muss sie leider vom Datenbankserver zugelassen werden, was zu unnötigen Problemen beim Kunden führen kann. Jetzt fangen wir nicht nur Deadlock-Ausnahmen ab (die natürlich immer noch auftreten können), sondern auch Snapshot-Parallelitätsprobleme, um Transaktionen von Hintergrundprozessen zu wiederholen (die vom Benutzer nicht wiederholt werden können). Aber das funktioniert immer noch viel besser als zuvor.