UPPER()
Описание
WHENEVER отслеживает ошибки и предупреждения возвращаемые SQLCODE. Каждая выполняемая инструкция SQl возвращает значение в SQLCODE, чтобы указать на успешное или неудачное выполнение инструкции. Если SQLCODE ноль, выполнение инструкции успешно. Отличное от нуля значение указывает на ошибку, предупреждение или не обнаруженное условие.
Если соответствующие условие отслежено, WHENEVER может:
- Использовать GOTO label, чтобы перейти к подпрограмме обработки ошибок в приложении.
- Использовать CONTINUE, чтобы игнорировать условие.
WHENEVER может помогать ограничивать приложение, потому что приложение может использовать один набор подпрограмм для обработки всех ошибок и предупреждений.
WHENEVER инструкции должны предшествовать любой инструкции SQL, которая мажет завершится ошибкой. Каждое условие требует отдельной инструкции WHENEVER. Если WHENEVER пропущено для некоторого условия, он не обрабатывается.
Совет: Предваряйте подпрограммы обработки ошибок инструкциями WHENEVER...CONTINUE, чтобы предотвратить бесконечный цикл в подпрограммах обработки ошибок.
Эта инструкция может быть использована в SQL
Синтаксис
WHENEVER {NOT FOUND | SQLERROR | SQLWARNING} {GOTO label | CONTINUE};
Аргумент | Описание |
---|---|
NOT FOUND |
Отслеживает SQLCODE = 100, не найдено допустимых строк для выполненной инструкции. |
SQLERROR |
Отслеживает SQLCODE |
SQLWARNING |
Отслеживает SQLCODE > 0 AND |
GOTO label |
Переход к программе определенной меткой, когда происходит предупреждение или ошибка. |
CONTINUE |
Игнорирует предупреждение или ошибку и пытается продолжить выполнение. |
Примеры
Следующий код из внедренного приложения SQL, иллюстрирует использование инструкции WHENEVER:
EXEC SQL WHENEVER SQLERROR GO TO Error; /* Обработка всех ошибок. */ EXEC SQL WHENEVER NOT FOUND GO TO AllDone; /* Обработка SQLCODE = 100 */ EXEC SQL WHENEVER SQLWARNING CONTINUE; /* Игнорирование всех предупреждений. */