NOLOCK: Jest odpowiednikiem READ UNCOMMITTED
(źródło:MSDN
)
NOLOCK
lub READ UNCOMMITTED
Określa, że dozwolone są nieczyste odczyty. Nie są wydawane żadne blokady współdzielone, aby uniemożliwić innym transakcjom modyfikowanie danych odczytanych przez bieżącą transakcję, a blokady na wyłączność ustawione przez inne transakcje nie blokują odczytu zablokowanych danych przez bieżącą transakcję. Zezwolenie na brudne odczyty może spowodować wyższą współbieżność, ale kosztem odczytu modyfikacji danych, które są następnie wycofywane przez inne transakcje
READ UNCOMMITTED
i NOLOCK
wskazówki dotyczą tylko blokad danych. Wszystkie zapytania, w tym te with READ UNCOMMITTED and NOLOCK
podpowiedzi, uzyskaj blokady Sch-S (stabilność schematu) podczas kompilacji i wykonywania. Z tego powodu zapytania są blokowane, gdy współbieżna transakcja blokuje tabelę Sch-M (modyfikacja schematu)