Вкладені конструкції TRY...CATCH
Ви хочете зареєструвати нового покупця в таблиці buyers. Це Peter Thomson. Його e-mail — [email protected], а номер телефону — 555000100.
У вашій базі даних також є таблиця errors, у якій зберігається кожна помилка.
Ви готуєте скрипт, який контролює можливі помилки під час вставлення даних цієї особи. Також він заносить ці помилки до таблиці errors.
Як ви підготуєте цей скрипт?
Ця вправа є частиною курсу
Транзакції та обробка помилок у SQL Server
Інструкції до вправи
- Обгорніть оператор
INSERT INTO buyersблокомTRY. - Обгорніть оброблення помилок блоком
CATCH. - Обгорніть оператор
INSERT INTO errorsще одним блокомTRY. - Обгорніть вкладене оброблення помилок ще одним блоком
CATCH.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
-- 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';
___ ___
___ ___