Предложение GOTO и NULL не являются ключевыми в программировании на языке PL/SQL.
GOTO тербуется крайне редко, тем не менее его используют - его применение может быть оправдано некоторым упращением логики. Следует отметить, что использование GOTO (Особенно в тех случаях, когда метка предшествует оператору GOTO) может привести к сложным, нераспознаваемым кодам ошибок, которые трудно обработать. Этот оператор нельзя использовать для перехода в IF-блок, LOOP-блок или другие блоки, из одного предложения IF-оператора к другому, из внешнего блока в SUB-блок, из обработчика особых ситуаций в текущий блок.
NULL - пустой оператор, он передает управление следующиму за ним оператору. Однако, к нему так же может передаваться управление и его наличие часто улучшает читаемость программы. Он такж е полезен для создания фиктивных подпрограмм для резервированя областей определения функций и процедур при отладке программ.
В PL/SQL существуют так называемые метки. Они могут быть поставленны в любом месте программы и она имеет следующий синтаксис: <<имя_метки>>. Приведем небольшой пример:
- BEGIN
- BEGIN
- GOTO MID; -- Переходим на метку "МИД"
- END;
- <<MID>> -- Метка
- NULL; -- ПЕРЕДАЕМ УПРАВЛЕНИЕ СЛЕДУЮЩЕМУ ОПЕРАТОРУ END.
- END;
- /