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

SQL 2005 sp_GetAppLock --- Wann soll sp_ReleaseAppLock aufgerufen werden?

Von sp_getapplock

Es wird also nicht benötigt, da Sie ein Rollback durchführen.

Wenn Sie jedoch auf Nummer sicher gehen möchten, würde ich es nach dem CATCH-Block tun und zuerst mit APPLOCK_TEST . Normalerweise wäre dies ein ENDLICH-Block, den wir nicht haben.

Ich hätte es hier, damit es immer ausgeführt wird. Wenn die Sitzung fortgesetzt wird oder das Verbindungspooling sie am Leben erhält (vergiss es jetzt), dann verlassen Sie sich auf das COMMIT/ROLLBACK, wenn es nicht kurz vor dem Beenden war. Natürlich wird alles, was den CATCH-Block verfehlt, ohnehin ein schwerwiegender Abbruchfehler sein...