Некоторые отличия использования WHILE в MySQL и Oracle:
В MySQL для операторов выхода из цикла и продолжения итерации обязательны метки, которые именуют блок или цикл. 2 Безусловный цикл определяется оператором LOOP, то есть условие выхода указывается явно внутри тела цикла. 2 Пример использования: WHILE i < 10 DO set i:=i+1; END WHILE
. 2
В Oracle цикл WHILE выполняется до тех пор, пока определённое в цикле условие остаётся равным TRUE. 3 Поскольку возможность выполнения цикла зависит от условия и не ограничивается фиксированным количеством повторений, он используется в тех случаях, когда количество повторений цикла заранее не известно. 3 Пример использования: WHILE i < 10 LOOP i:=i+1; END LOOP
. 2
Таким образом, в MySQL акцент сделан на явное указание условия выхода внутри тела цикла, а в Oracle — на выполнение цикла до тех пор, пока условие истинно, и возможность того, что тело цикла не выполнится ни разу. 34