Aan de slagGa gratis aan de slag

TRY...CATCH-constructies nesten

Je wilt een nieuwe koper registreren in je buyers-tabel. Deze nieuwe koper is Peter Thomson. Zijn e-mailadres is [email protected] en zijn telefoonnummer is 555000100.

In je database staat ook een tabel met de naam errors, waarin elke fout wordt opgeslagen.

Je bereidt een script voor dat mogelijke fouten bij het invoegen van de gegevens van deze persoon afvangt. Het voegt die fouten ook toe aan de tabel errors.

Hoe bereid je het script voor?

Deze oefening maakt deel uit van de cursus

Transacties en foutafhandeling in SQL Server

Cursus bekijken

Oefeninstructies

  • Zet het statement INSERT INTO buyers in een TRY-blok.
  • Zet de foutafhandeling in een CATCH-blok.
  • Zet het statement INSERT INTO errors in een ander TRY-blok.
  • Zet de geneste foutafhandeling in een ander CATCH-blok.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

-- Set up the first TRY block
___ ___
	INSERT INTO buyers (first_name, last_name, email, phone)
		VALUES ('Peter', 'Thompson', '[email protected]', '555000100');
___ ___
-- Set up the first CATCH block
___ ___
	SELECT 'An error occurred inserting the buyer! You are in the first CATCH block';
    -- Set up the nested TRY block
    ___ ___
    	INSERT INTO errors 
        	VALUES ('Error inserting a buyer');
        SELECT 'Error inserted correctly!';
	___ ___
    -- Set up the nested CATCH block
    ___ ___
    	SELECT 'An error occurred inserting the error! You are in the nested CATCH block';
    ___ ___ 
___ ___
Code bewerken en uitvoeren