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

So überprüfen Sie, welche Sperren auf einer Tabelle gehalten werden

Dies zeigt Ihnen nicht genau, welche Zeilen gesperrt sind, aber es kann hilfreich für Sie sein.

Sie können überprüfen, welche Anweisungen blockiert sind, indem Sie Folgendes ausführen:

select cmd,* from sys.sysprocesses
where blocked > 0

Es wird Ihnen auch sagen, worauf jeder Block wartet. Sie können das also ganz nach oben verfolgen, um zu sehen, welche Anweisung die erste Blockade verursacht hat, die die anderen Blockaden verursacht hat.

Bearbeiten um einen Kommentar von @MikeBlandford hinzuzufügen:

Die blockierte Spalte gibt die Spid des Blockierungsprozesses an. Sie können kill {spid} ausführen, um das Problem zu beheben.