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

Обречённые транзакции

Вы хотите вставить данные двух новых клиентов в таблицу customer. Для этого вы подготавливаете скрипт, который при возникновении ошибки откатывает транзакцию и выводит сообщение об ошибке. Управление этим поведением осуществляется с помощью XACT_ABORT в сочетании с XACT_STATE.

Это упражнение является частью курса

Транзакции и обработка ошибок в SQL Server

Посмотреть курс

Инструкции к упражнению

  • Укажите подходящее значение для XACT_ABORT.
  • Проверьте, есть ли открытая транзакция.
  • Выполните откат транзакции.
  • Выведите сообщение об ошибке.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Use the appropriate setting
SET XACT_ABORT ___;
BEGIN TRY
	BEGIN TRAN;
		INSERT INTO customers VALUES ('Mark', 'Davis', '[email protected]', '555909090');
		INSERT INTO customers VALUES ('Dylan', 'Smith', '[email protected]', '555888999');
	COMMIT TRAN;
END TRY
BEGIN CATCH
	-- Check if there is an open transaction
	IF ___() <> 0
    	-- Rollback the transaction
		___;
    -- Select the message of the error
    SELECT ___() AS Error_message;
END CATCH
Редактировать и запускать код