- Главная
- Информатика
- Обработка ошибок

Содержание
- 2. TRY/CATCH Ошибки с уровнем серьезности больше 10 и меньше 20 в блоке TRY приводят к передаче
- 3. Функции CATCH ERROR_NUMBER — возвращает номер ошибки; ERROR_MESSAGE — возвращает сообщение об ошибке; ERROR_SEVERITY — возвращает
- 4. Сообщения об ошибке в SQL Server Номер ошибки (error number) Уровень серьезности (Severity level). Состояние (state)
- 5. Команда RAISERROR RAISERROR ( { msg_id | msg_str | @local_variable } { , severity , state
- 7. Скачать презентацию
Слайд 2TRY/CATCH
Ошибки с уровнем серьезности больше 10 и меньше 20 в блоке TRY
TRY/CATCH
Ошибки с уровнем серьезности больше 10 и меньше 20 в блоке TRY

приводят к передаче управления блоку CATCH.
Ошибки с уровнем серьезности 20 и больше, которые не закрывают соединения, также обрабатываются блоком CATCH.
Ошибки компиляции и некоторые ошибки выполнения программы, задействующие компиляцию уровня инструкции, прерывают выполнение пакета немедленно и не передают управление CATCH.
Если ошибка произошла в блоке CATCH, транзакция прерывается и ошибка возвращается вызывающему приложению, если блок CATCH не вложен в блок TRY.
В блоке CATCH можно выполнить фиксацию или откат текущей транзакции, если транзакция не может быть зафиксирована и ее необходимо откатить. Для проверки состояния транзакции можно запросить функцию XACT_STATE.
Ошибки с уровнем серьезности 20 и больше, которые не закрывают соединения, также обрабатываются блоком CATCH.
Ошибки компиляции и некоторые ошибки выполнения программы, задействующие компиляцию уровня инструкции, прерывают выполнение пакета немедленно и не передают управление CATCH.
Если ошибка произошла в блоке CATCH, транзакция прерывается и ошибка возвращается вызывающему приложению, если блок CATCH не вложен в блок TRY.
В блоке CATCH можно выполнить фиксацию или откат текущей транзакции, если транзакция не может быть зафиксирована и ее необходимо откатить. Для проверки состояния транзакции можно запросить функцию XACT_STATE.
Слайд 3Функции CATCH
ERROR_NUMBER — возвращает номер ошибки;
ERROR_MESSAGE — возвращает сообщение об ошибке;
Функции CATCH
ERROR_NUMBER — возвращает номер ошибки;
ERROR_MESSAGE — возвращает сообщение об ошибке;

ERROR_SEVERITY — возвращает уровень серьезности ошибки;
ERROR_LINE — возвращает номер строки в пакете, где произошла ошибка;
ERROR_PROCEDURE — имя функции, триггера или процедуры, которые выполнялись в момент возникновения ошибки;
ERROR_STATE — состояние ошибки
ERROR_LINE — возвращает номер строки в пакете, где произошла ошибка;
ERROR_PROCEDURE — имя функции, триггера или процедуры, которые выполнялись в момент возникновения ошибки;
ERROR_STATE — состояние ошибки
Слайд 4Сообщения об ошибке в SQL Server
Номер ошибки (error number)
Уровень
Сообщения об ошибке в SQL Server
Номер ошибки (error number)
Уровень

серьезности (Severity level).
Состояние (state)
Сообщение об ошибке (error message)
sys.messages – содержит сообщения
Состояние (state)
Сообщение об ошибке (error message)
sys.messages – содержит сообщения
Слайд 5Команда RAISERROR
RAISERROR ( { msg_id | msg_str | @local_variable }
Команда RAISERROR
RAISERROR ( { msg_id | msg_str | @local_variable }

{ , severity , state }
[ , argument [ ,...n ] ] )
[ WITH option [ ,...n ] ]
RAISERROR ('Error in usp_InsertCategories stored procedure', 16, 0);
RAISERROR ('Error in %s stored procedure', 16, 0, N'usp_InsertCategories');
DECLARE @message AS NVARCHAR(1000) = 'Error in %s stored procedure';
RAISERROR (@message, 16, 0, N'usp_InsertCategories');
[ , argument [ ,...n ] ] )
[ WITH option [ ,...n ] ]
RAISERROR ('Error in usp_InsertCategories stored procedure', 16, 0);
RAISERROR ('Error in %s stored procedure', 16, 0, N'usp_InsertCategories');
DECLARE @message AS NVARCHAR(1000) = 'Error in %s stored procedure';
RAISERROR (@message, 16, 0, N'usp_InsertCategories');
Основы программирования на языке Python. Школа::Кода (занятие 2)
Регистрация и запись ребенка в электронном каталоге программ дополнительного образования Навигатор
Работы Цыпляковой Н.А. в CorelDraw, Photoshop, AutoCAD & Marvelous
Сортировка Метод пузырька
Login To Your Tomiex Exchange Account
Устройство компьютера
Построение скетчера с применением функции Project 3D Elements
Неочевидные способы потерять свои деньги в криптовалюте
Назначение системы BIOS
Защиты авторских прав в сети Internet
Система электронного документооборота для лабораторий
Reading game
Интернет. Территория безопасности
C++ լեզուն լռելյայն վերահսկում է նախաարժեքավորումը, բայց ոչ թե մուտքագրումը
Version 1.0. Условия в Python. Условные операторы, условные конструкции, True/False
Компьютерные азы
Российская ассоциация автоюристов в 2ГИС
Кодирование и шифрование
Компьютерная сеть
Информационная безопасность как объект моделирования
Компьютерные сети. Основные понятия
Разработка проекта. Анализ
Lektsia_1_IT
Основы теории кодирования, криптографии и передачи информации
Цикл do, while
Методы и приемы обеспечения информационной безопасности
Интернет - мошенничество
SQL. Structured Query Language. Структурированный язык запросов