Для изменения логического потока операций в блоке PL/SQL используются следующие управляющие структуры:
- Конструкции условного управления с оператором IF;
- Простой цикл для безусловного повторного выполнения действий;
- Цикл FOR для управления количеством повторов по результату проверки истинности выражения;
- Оператор EXIT для выхода из цикла.
Оператор LOOP обычно используется, когда пользователь не уверен, сколько раз необходимо выполнить тело цикла, прежде чем выйти из него. Здесь же нам понадобиться оператор EXIT, при помощи которого можно выйти из цикла, в случае удовлетворения условий. Структура оператора LOOP выглядит следующим образом:
- LOOP
- {...statements...
- [EXIT [WHEN …some conditions…]]} – Где some conditions – условия выхода из цикла.
- END LOOP;
К слову оператор EXIT используется не только в случае оператора LOOP, но всё же здесь его используют чаще всего.
FOR-LOOP – цикл, которые выполняется в течении фиксированного количества раз. Синтаксис:
- FOR loop_count IN [RVERESE] low_nun..high_num
- LOOP
- {...statements...}
- END LOOP;
WHILE-LOOP – цикл, который будет выполняться до тех пор, пока его условие будет истинно. Структура:
- WHILE condition
- LOOP
- {...statements...}
- END LOOP;
На каждой итерации данного цикла происходить проверка, удовлетворяют ли условия (condition) для успешного продолжения. Если да, то цикл снова срабатывает, если нет – то просто выходим из цикла.