Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Níveis de isolamento do SQL Server:uma série

Crédito da foto:Alexander Baxevanis
Atualizado em 23 de abril de 2015

No ano passado, reuni uma série de postagens com o objetivo de dar uma olhada detalhada na simultaneidade, nas propriedades ACID de instruções e transações e cada um dos principais níveis de isolamento no SQL Server. Agora concluí a série com um post final sobre provavelmente o nível de isolamento usado intencionalmente mais comum:leia não confirmado ("NOLOCK").
As propriedades ACID de extratos e transações
O nível de isolamento serializável
O nível de isolamento de leitura repetível
O nível de isolamento confirmado de leitura
Ler o isolamento de instantâneo confirmado
Modificações de dados no isolamento de instantâneos confirmados de leitura
O nível de isolamento do INSTANTÂNEO
O nível de isolamento não confirmado de leitura



Já que você foi paciente para a parte final, há outras leituras/observações em segundo plano na leitura descomprometida que posso oferecer:
  • Lubor Kollar:linhas previamente confirmadas podem ser perdidas se a dica NOLOCK for usada
  • Aaron Bertrand :Maus hábitos :Colocar NOLOCK em todos os lugares
  • Craig Freedman:falha na consulta com leitura não confirmada
  • Aaron Bertrand:Evite usar NOLOCK em instruções UPDATE e DELETE do SQL Server
  • David Lean:Dica do SQL Server NOLOCK e outras ideias ruins
  • Sunil Agarwal :Série de simultaneidade:por que recebo bloqueio quando uso o nível de isolamento Ler não confirmado ou uso a dica NOLOCK?
  • Tony Rogerson:Timebomb – O problema de consistência com NOLOCK / READ UNCOMMITTED (e um acompanhamento)