Comece agoraComece grátis

Usando o nível de isolamento READ UNCOMMITTED

Uma nova cliente vai ao seu banco para abrir uma conta. Você insere os dados dela no sistema, fazendo com que um script como este comece a executar:

BEGIN TRAN

  INSERT INTO customers (first_name, last_name, email, phone)
  VALUES ('Ann', 'Ros', '[email protected]', '555555555')

  DECLARE @cust_id INT = scope_identity()

  INSERT INTO accounts (account_number, customer_id, current_balance)
  VALUES ('55555555555010121212', @cust_id, 150)

COMMIT TRAN

Nesse momento, seu colega do marketing começa a enviar e-mails para todos os clientes. Vai rolar um sorteio de um carro! O script que ele executa busca os dados de todos os clientes, incluindo a última cliente que você inseriu. Esse script começa a rodar depois que o primeiro insert ocorre, mas antes do COMMIT TRAN.

Como isso é possível?

Este exercicio faz parte do curso

Transações e tratamento de erros no SQL Server

Ver curso

Instruções do exercicio

  • Defina o nível de isolamento READ UNCOMMITTED.
  • Selecione first_name, last_name, email e phone da tabela customers.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

-- Set the appropriate isolation level
___ TRANSACTION ___ LEVEL ___ ___

	-- Select first_name, last_name, email and phone
	SELECT
    	___, 
        ___, 
        ___,
        ___
    FROM customers;
Editar e Executar Código