TRY...CATCH-Konstrukte verschachteln
Du möchtest eine neue Käuferin bzw. einen neuen Käufer in deiner Tabelle buyers registrieren. Die neue Person ist Peter Thomson. Seine E-Mail ist [email protected] und seine Telefonnummer ist 555000100.
In deiner Datenbank gibt es außerdem eine Tabelle namens errors, in der jeder Fehler gespeichert wird.
Du bereitest ein Skript vor, das mögliche Fehler beim Einfügen der Daten dieser Person abfängt. Außerdem sollen diese Fehler in die Tabelle errors geschrieben werden.
Wie bereitest du das Skript vor?
Diese Übung ist Teil des Kurses
Transaktionen und Fehlerbehandlung in SQL Server
Anleitung zur Übung
- Umgib die Anweisung
INSERT INTO buyersmit einemTRY-Block. - Umgib die Fehlerbehandlung mit einem
CATCH-Block. - Umgib die Anweisung
INSERT INTO errorsmit einem weiterenTRY-Block. - Umgib die verschachtelte Fehlerbehandlung mit einem weiteren
CATCH-Block.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
-- 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';
___ ___
___ ___