Imbriquer des construits TRY...CATCH
Vous souhaitez enregistrer un nouvel acheteur dans votre table buyers. Cet acheteur s'appelle Peter Thomson. Son courriel est [email protected] et son numéro de téléphone est 555000100.
Dans votre base de données, il y a aussi une table nommée errors, dans laquelle chaque erreur est conservée.
Vous préparez un script qui gère les erreurs possibles lors de l'insertion des données de cette personne. Il insère aussi ces erreurs dans la table errors.
Comment préparez-vous ce script?
Cette activité fait partie du cours
Transactions et gestion des erreurs dans SQL Server
Instructions de l’exercice
- Encadrez l'instruction
INSERT INTO buyersavec un blocTRY. - Encadrez la gestion des erreurs avec un bloc
CATCH. - Encadrez l'instruction
INSERT INTO errorsavec un autre blocTRY. - Encadrez la gestion d'erreurs imbriquée avec un autre bloc
CATCH.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
-- 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';
___ ___
___ ___