Смешанные процедурные операторы

Оценить
(2 голоса)

Процедурное расширение языка Transact-SQL также содержит следующие операторы:

♦ return;

♦ goto;

♦ raiseerror;

♦ waitfor.

Оператор return имеет ту же функциональность внутри пакета, что и оператор break внутри while. Это означает, что оператор return приводит к завершению выполнения пакета, после чего будет выполняться первый оператор, следующий сразу после пакета.

Оператор goto передает управление на метку, которая стоит перед оператором Transact-SQL в этом же пакете. Оператор raiseerror генерирует сообщение об ошибке, созданное пользователем, и устанавливает флаг системной ошибки. Номер ошибки, определенной пользователем, должен быть больше чем 50 000. (Все номера ошибок, меньше или равные 50 000, определены в системе и резервируются для Database Engine.) Значение кода ошибки сохраняется в глобальной переменной @@error.

Оператор waitfor либо определяет временной интервал (если используется опция delay), либо задает время (если указана опция time), в течение которого система должна перейти в состояние ожидания, прежде чем выполнить следующий оператор в пакете. Синтаксис этого оператора:

waitfor ( delay  'time'  I time  'time'  I timeout  'timeout' }

Опция delay сообщает системе базы данных, что следует подождать, пока не пройдет заданный промежуток времени, time задает время в одном из принятых форматов даты. (Пример 13.5 показывает использование оператора waitfor.) timeout задает время в миллисекундах ожидания появления сообщения из очереди сообщений.


Обработка событий операторами TRYvi CATCH
Хранимые процедуры
Создание выполняемых хранимых процедур
Изменение структуры хранимых процедур
Хранимые процедуры и CLR

Добавить комментарий


Защитный код
Обновить

© 2021 serversql.ru. Все права защищены.