NOLOCK När detta alternativ är valt läser eller ändrar SQL Server data utan några lås. I detta fall kan användaren läsa data från en obunden transaktion eller Roll Back, känd som "smutsig data".
HOLDLOCK När detta alternativ är valt behåller SQL Server detta delade lås tills hela transaktionen är slut utan att släppa det på vägen.
UPDLOCK När detta alternativ är valt använder SQL Server ett modifieringslås istället för ett delat lås när data läses och behåller detta lås tills hela transaktionen eller kommandot är slut. Detta alternativ säkerställer att flera processer kan läsa data samtidigt, men endast den processen kan ändra datan.
TABLOCK När detta alternativ är valt placerar SQL Server ett delat lås på hela tabellen tills kommandot avslutas. Detta alternativ säkerställer att andra processer endast kan läsa och inte ändra data.
PAGLOCK Detta alternativ är standardvalet, och när det är valt använder SQL Server ett delat sidlås.
TABLOCKX (Exklusivt bordslås) När detta alternativ är valt kommer SQL Server att låsa hela tabellen tills kommandot eller transaktionen avslutas. Detta förhindrar att andra processer läser eller ändrar datan i tabellen.
HOLDLOCK håller det delade låset tills hela transaktionen är slutförd och bör släppas så snart det låsta objektet inte längre behövs, motsvarande nivån för SERIALIZABLE transaktionsisolering
NOLOCK-satsen exekveras utan att utfärda ett delat lås, vilket tillåter dirty reads, vilket motsvarar nivån för READ UNCOMMITTED transaktionsisolering
PAGLOCK använder flera sidlås där ett tabelllås används
READPAST låter SQL-servern hoppa över låsta rader och utföra transaktioner, och för READ UNCOMMITTED transaktionsisoleringsnivåer hoppar man bara över RID-lås, inte sid-, zon- och tabelllås
ROWLOCK upprätthåller användningen av rowlocks
TABLOCKX upprätthåller användningen av ett exklusivt tabellnivålås, vilket förhindrar att andra transaktioner använder tabellen under transaktionen
UPLOCK tvingar användning av uppdateringar när man läser en tabell utan delat lås
Obs: Skillnaden mellan att låsa en tabell i en databas VÄLJ * FRÅN tabell MED (HOLDLOCK) Andra transaktioner kan läsa tabellen, men kan inte uppdatera eller ta bort VÄLJ * FRÅN tabell MED (TABLOCKX) Andra transaktioner kan inte läsa, uppdatera och ta bort tabeller |