Impedir phantom reads em uma tabela
Hoje você precisa analisar os dados de todos os clientes do seu banco. Como essa informação é muito importante, você pensa em bloquear a tabela customers inteira, para que ninguém consiga alterar nada nessa tabela. Ao fazer isso, você evita phantom reads.
Você prepara um script para selecionar essas informações e, com o resultado dessa seleção, precisa realizar algumas operações matemáticas. (Não vamos focar nessas operações neste exercício.) Depois disso, você quer selecionar os mesmos dados novamente, garantindo que nada mudou.
Este exercício faz parte do curso
Transações e tratamento de erros no SQL Server
Instruções do exercício
- Defina o nível de isolamento apropriado para evitar phantom reads.
- Inicie a transação.
- Faça o commit da transação.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
-- Set the appropriate isolation level
___ ___ ___ ___ ___
-- Begin a transaction
___ ___
SELECT * FROM customers;
-- After some mathematical operations, we selected information from the customers table.
SELECT * FROM customers;
-- Commit the transaction
___ ___