Utilizzare il livello di isolamento READ UNCOMMITTED
Una nuova cliente arriva in banca per aprire un conto. Inserisci i suoi dati nel sistema, facendo partire uno script come questo:
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
In quel momento, il collega del marketing inizia a inviare e‑mail a tutti i clienti. C’è una lotteria per un’auto! Lo script che esegue recupera i dati di ogni cliente, inclusa l’ultima cliente che hai inserito. Questo script parte dopo la prima INSERT ma prima del COMMIT TRAN.
Com’è possibile?
Questo esercizio fa parte del corso
Transazioni e gestione degli errori in SQL Server
Istruzioni dell'esercizio
- Imposta il livello di isolamento
READ UNCOMMITTED. - Seleziona
first_name,last_name,emailephonedalla tabellacustomers.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
-- Set the appropriate isolation level
___ TRANSACTION ___ LEVEL ___ ___
-- Select first_name, last_name, email and phone
SELECT
___,
___,
___,
___
FROM customers;