SQL Server - wie einstellen (nolock) Hinweis als Standard?
-
10-07-2019 - |
Frage
Gibt es eine Möglichkeit SQL Server zu sagen, die (nolock) Hinweis oder jeden in einer gespeicherten Prozedur wählen zu benutzen?
ist ziemlich ermüdend es zu jedem hinzuzufügen ein jeder wählen ....
Lösung 4
Google ....
Wie nolock Hinweis für SQL Server-Anmeldungen erzwingen
scheint der beste Weg, um dies zu erreichen, ist zur Ausgabe von a
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
andere Idee ???
ps
eine weitere Frage im Zusammenhang ...
Andere Tipps
Wie andere zu Recht sagen, einen globalen (nolock) erfolgte READ UNCOMMITTED verwendet wird.
Bevor jedoch diesen Weg nach unten geht, es lohnt sich erste READ COMMITTED SNAPSHOT versuchen. Das bedeutet, Du liest, wird nicht durch Einsätze / Aktualisierungen im Gang gesperrt werden und bedeutet, dass die Daten nicht verschmutzt sind, einfach veraltet.
Ich denke, das ist das, was Sie suchen ...
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
Sie verwenden möchten die folgenden Syntax :
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
fand ich dies an dem NOLOCK-Tabellenhinweis sucht sie hier . Die WITH (NOLOCK) Tabelle hint entspricht die Isolationsstufe einstellen UNCOMMITTED zu lesenden. Hier ist der Ausschnitt aus MSDN :
NOLOCK Entspricht READUNCOMMITTED. Weitere Informationen finden Sie READUNCOMMITTED später in diesem Thema.
Sie können jedoch auf mit falschen Daten beenden. Am 2005 ist es vorzuziehen, die Snapshot-Isolation zu verwenden: „Wenn Snapshot Isolation hilft und wenn es verletzt“ http://www.devx.com/dbzone/Article/32957