SQL Server - como definir dica (nolock) como um padrão?
-
10-07-2019 - |
Pergunta
Existe alguma maneira de dizer do SQL Server para usar a dica (nolock) ou a cada escolha em um procedimento armazenado?
é muito cansativo para adicioná-lo a cada um a cada select ....
Solução 4
encontrado este ....
Como forçar dica nolock para sql server logins
parece ser a melhor maneira de conseguir isso é a emissão de um
SET TRANSACTION ISOLATION LEVEL LEIA UNCOMMITTED
qualquer outra idéia ???
ps
outra questão relacionada ...
Outras dicas
Como outros dizem, com razão, uma global (nolock) é feito usando LEIA UNCOMMITTED.
No entanto, antes de ir por esse caminho, vale a pena tentar READ COMMITTED SNAPSHOT primeiro. Isso significa que o lê não será bloqueado por em andamento inserções / atualizações e meios que os dados não é sujo, apenas fora da data.
Eu acho que isso é o que você está procurando ...
SET TRANSACTION ISOLATION LEVEL LEIA UNCOMMITTED
Você quer usar o seguinte sintaxe :
SET TRANSACTION ISOLATION LEVEL LEIA UNCOMMITTED
Eu encontrei este, olhando para a dica de tabela NOLOCK localizado aqui . O COM (NOLOCK) dica mesa é equivalente a definir o nível de isolamento a ser lido não confirmadas. Aqui está o trecho de MSDN :
NOLOCK É equivalente a READUNCOMMITTED. Para mais informações, consulte READUNCOMMITTED mais adiante neste tópico.
No entanto, você pode acabar com dados incorretos. Em 2005, é preferível usar o isolamento de instantâneo: "Quando Snapshot Isolation ajuda e quando fere" http://www.devx.com/dbzone/Article/32957