Составители:
Рубрика:
ГУАП МЦИТ
Введение в «ORACLE»
Под ред. проф. В.М.Космачёва
55
RobertCDnum:=&INPUT_DATA;
RobertCDname := CASE RobertCDnum
WHEN 1 THEN ‘Shine’
WHEN 2 THEN ‘Princesse de Rien’
WHEN 3 THEN ‘Celle qui tue’
WHEN 4 THEN ‘Unutma (Noublie pas)’
ELSE ‘Not yet’
END;
DBMS_OUTPUT.PUT_LINE(TO_CHAR(RobertCDnum) || RobertCDname);
END;
Оператор цикла
В PL/SQL есть три типа оператора цикла: LOOP, FOR LOOP, WHILE LOOP:
LOOP
Операторы
EXIT [WHEN условие] ;
END LOOP;
Последовательность операторов между LOOP и END LOOP многократно повторяется до тех пор, пока условие не
примет значение TRUE. Условие может принимать одно из трех значений: TRUE, FALSE,NULL. Этот оператор
выполняется, по крайней мере, хотя бы один раз, если будет отсутствовать EXIT, то последовательность операторов
будет выполняться бесконечно. Если условие принимает значение TRUE, то будет выполняться следующий за LOOP
оператор
FOR counter IN [REVERSE] lower_bound .. upper_bound LOOP
Оператор1.;
ОператорK;
END LOOP;
REVERSE означает изменение параметра цикла от верхней границы до нижней границы, при этом нижняя граница в
операторе цикла опять стоит первой. Объявлять параметр цикла counter в операторе DECLARE нет необходимости,
он по умолчанию объявляется как целый, lower_bound — нижняя граница изменения параметра цикла, upper_bound —
верхняя граница изменения параметра цикла
WHILE условие LOOP
Оператор1;
ОператорK;
END LOOP;
Последовательность операторов между LOOP и END LOOP повторяется до тех пор, пока условие имеет значение
TRUE. Условие проверяется до выполнения последовательности операторов, если условие принимает значение
FALSE, то последовательность операторов перестает выполняться. Этот оператор может ни разу не проработать, если
условие перед выполнением оператора имеет значение FALSE.
МЕТКИ
Метки следует использовать для структурирования программы и более гибкого управления выходом из вложенных
циклов.
Синтксис метки: <<имя_метки>>
Например
<<All_emp>>
FOR emp_rec IN emp_cur LOOP
. . . .
Страницы
- « первая
- ‹ предыдущая
- …
- 53
- 54
- 55
- 56
- 57
- …
- следующая ›
- последняя »
