Ю тся следую щие вопросы : ■ Структура блоков я зы к а o racle p L /s q L
Download 0.9 Mb. Pdf ko'rish
|
Майкл Мак-Локлин - 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: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling