Ю тся следую щие вопросы : ■ Структура блоков я зы к а o racle p L /s q L


Download 0.9 Mb.
Pdf ko'rish
bet7/14
Sana07.03.2023
Hajmi0.9 Mb.
#1246661
1   2   3   4   5   6   7   8   9   10   ...   14
Bog'liq
Майкл Мак-Локлин - Oracle DB 11g. Программирование на языке PL-SQL - 2014 better 51-73

Циклы F O R
P L /S Q L п одд ерж и вает чи словы е и курсорны е циклы . Ц и кл 
FOR 
осущ ест­
в л яет п о в то р е н и е тел а ц икла в рам ках п ред п и сан н ого д иапазона, а цикл 
FOR 
осущ ествляет п роходы по строкам , к о то р ы е возвращ ен ы о п ер ато р о м
SELECT. 
Ц и кл 
FOR 
у п равляет н ачалом и завер ш ен и ем ц икла по умолчанию . 
Вы м ож ете о б о й ти ф разу 
END LOOP, 
к о то р а я р аб о тае т по умолчанию , п р и ­
м еняя яв н о задан н ы е о п ер ато р ы
CONTINUE 
(п родолж ить) и ли
EXIT 
(вы й­
ти ), чтобы , со о тветствен н о, н ем едлен н о п е р е й ти к следующей и тер ац и и
и ли п реж д еврем ен н о в ы й ти и з цикла.
Ц и кл 
FOR 
по ум олчанию в ы п о л н яет два дей ствия. О н автом атич ески
о б ъ яв ляет и уп равл яет собствен н ы м счетч и ком ц икла (индексом ), а так­
ж е создает и уп равляет п роцедурой вы хода и з цикла. Ц и кл 
FOR 
и м еет сле­
дующий п рототи п :
□ FOR i IN начальное_число..конечное_число LOOP 
оператор;
END LOOP;
З н ач ен и я н ач альн ое_ч и сло и к о н еч н ое_ чи сл о д олж ны бы ть целы м и 
числами. С четчи ком ц икла я в л яется п ер ем ен н ая i, кром е того, задан диа­
п азон ее и зм ен ен и я в ц икле 
FOR. 
П ер ем ен н ая сч етч и к а яв л яется числом
ти п а 
PLS_INTEGER. 
Если вы р ан ее уже о п ред ел и ли перем енную i, то цикл 
п р о и гн о р и р у ет внеш ню ю перем енную и создаст новую локальную п е р е ­
менную.
Вот п р и м ер програм м ы , ко то р а я п еч атает ч исла о т 1 до 10:
□ BEGIN
FOR i IN 1..10 LOOP
dbms_output. PUT_LINE( ‘ Значение счетчика цикла равно [‘ M i l l ’]’);
END LOOP;
END;
/
Ц икл 
FOR 
треб ует локальн о оп ред ел ен н о го о п ер ато р о м
CURSOR 
курсо­
ра. Вы не м ож ете и сп ользовать курсорны й цикл 
FOR 
для осущ ествления 
и тер ац и й по курсорной п ер ем ен н о й
(REF CURSOR), 
потому ч то п рох оди ть


40
Гпава 2
по курсорны м п ер ем ен н ы й м ож но только используя яв н о задан н ы е ц ик­
л и ч ески е структуры - п р о сто й ц икл и ц икл 
WHILE. 
Ц и кл 
FOR, 
кром е того, 
м ож ет и сп ользовать о п ер ато р
SELECT 
вм есто л окальн о оп ред ел ен н о го 
курсора, ч то п оказан о в следующем п ро то ти п е:
□ FOR i IN {имя_курсора [параметр1,параметр(п+1))]|(onepaTop_sql)} LOOP 
оператор;
END LOOP;
И м я_курсора м ож ет соп ровож д аться н ео б язател ьн ы м списком п ар а­
м етров, к о то р ы й заклю чается в скобки. И м я_курсора без н ео б язатель­
ны х 

Download 0.9 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   ...   14




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling