Инструменты пользователя

Инструменты сайта


Боковая панель

Введение

Статьи и часто задаваемые вопросы

Установка и настройка

Обработка ошибок

Полезные запросы SQL

Тематические группы

when

WHEN

используется в конструкции запросов SELECT или CASE

и как самостоятельный оператор:?: для вылавливания исключений что и будет рассмотрено в этой заметке

Версии сервера

Firebird 1.5 Firebird 2.0

Формат

WHEN < SQLCODE код | GDSCODE код | ANY > DO <выражение> ;

Описание

Встроенная функция

Для обработки исключений в процедуре или тригере смотрите также EXCEPTION

GDSCODE - это номера ошибок из ibase.h, подробнее см. GDSCODES (Коды ошибок Firebird)

Пример

  BEGIN
    ...
  WHEN SQLCODE -802 DO
    EXCEPTION E_ARITH_EXCEPT;
  WHEN SQLCODE -803 DO
    EXCEPTION E_KEY_VIOLATION;
  WHEN ANY DO
    EXCEPTION;
  END

См.также

Источник

%Firebird%\doc\sql.extensions\README.exception_handling

%Firebird%\doc\sql.extensions\README.context_variables

Обсуждение

Антон, 2012/09/07 10:37

Для перехвата исключений, определенных в базе CREATE EXCEPTION MY_EXCEPTION ''; … BEGIN

...

WHEN EXCEPTION MY_EXCEPTION DO

...

END …

Только авторизованные участники могут оставлять комментарии.
when.txt · Последние изменения: 2009/02/16 18:49 (внешнее изменение)