CommencerCommencer gratuitement

Utiliser le niveau d’isolement READ UNCOMMITTED

Une nouvelle cliente se rend dans votre banque pour ouvrir un compte. Vous saisissez ses informations dans votre système, ce qui déclenche l’exécution d’un script comme celui-ci :

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

À ce moment-là, votre collègue du marketing commence à envoyer des e‑mails à tous les clients. Il y aura une tombola pour gagner une voiture ! Le script qu’il exécute récupère les données de tous les clients, y compris celles de la dernière cliente que vous venez d’insérer. Ce script démarre après la première insertion mais avant le COMMIT TRAN.

Comment est-ce possible ?

Cet exercice fait partie du cours

Transactions et gestion des erreurs dans SQL Server

Afficher le cours

Instructions

  • Définissez le niveau d’isolement READ UNCOMMITTED.
  • Sélectionnez first_name, last_name, email et phone depuis la table customers.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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

	-- Select first_name, last_name, email and phone
	SELECT
    	___, 
        ___, 
        ___,
        ___
    FROM customers;
Modifier et exécuter le code