НачатьНачать бесплатно

Вложенные конструкции TRY...CATCH

Вы хотите зарегистрировать нового покупателя в таблице buyers. Это Питер Томсон: его электронная почта — [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';
    ___ ___ 
___ ___
Редактировать и запускать код