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

Transaktionsisolation und Lesen aus mehreren Tabellen auf SQL Server Express und SQL Server 2005

Ihre Entscheidung, alle Daten auf einmal zu laden, bedeutet nur sehr wenige Optionen:

  • Verwenden Sie sp_getapplock, um den Zugriff über den relevanten Code zu serialisieren
  • Verwenden Sie TABLOCKX, HOLDLOCK für die Lesevorgänge in einer Transaktion

Sie haben Probleme, weil SET TRANSACTION ISOLATION LEVEL SERIALIZABLE wirkt sich nur auf die Isolation aus der Sperren:Sie müssen die Dauer steuern (HOLDLOCK ) und Granularität + Modus (TABLOCKX )