ComeçarComece de graça

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 exercício faz parte do curso

Transações e tratamento de erros no SQL Server

Ver curso

Instruções do exercício

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

Exercício interativo prático

Experimente este exercício 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 o código