PL/SQL Loops

Pl Sql Loops



Ang mga loop ay isa sa mga pangunahing bloke ng gusali sa programming. Gumagamit kami ng mga loop upang lumikha ng mga napapamahalaang bloke ng code na maaaring isagawa nang maraming beses kapag totoo ang isang partikular na kundisyon. Sila ang pangunahing buto kapag awtomatiko ang mga paulit-ulit na gawain nang hindi muling sinusulat ang isang bloke ng code nang maraming beses.

Tulad ng lahat ng pangunahing wika ng programming, sinusuportahan ng PL/SQL ang mga loop na nagpapahintulot sa isang set ng mga tagubilin na maulit hanggang sa matugunan ang isang partikular na kundisyon.

Sa tutorial na ito, tutuklasin natin ang paggamit ng LOOP statement sa PL/SQL upang paulit-ulit na magsagawa ng isang bloke ng code.







Oracle Loops

Sinusuportahan ng PL/SQL na wika ang iba't ibang mga loop construct tulad ng 'for' loop at 'while' loops. Maaari naming ipahayag ang syntax ng isang generic na loop sa Oracle tulad ng ipinapakita sa sumusunod:



<< label >> LOOP
loop_statement;
END LOOP loop_label;

Naglalaman ito ng LOOP na keyword at ang katawan ng loop na ipapatupad at nakapaloob sa END LOOP na keyword.



Ang LOOP block ay nagpapatakbo ng tinukoy na mga aksyon at ibinabalik ang kontrol sa tuktok na loop clause pagkatapos makumpleto. Ito ay kadalasang nakapaloob sa isang EXIT o EXIT WHEN clause upang wakasan ang loop pagkatapos matugunan ang isang partikular na kundisyon. Nakakatulong ito na maiwasan ang walang katapusang mga loop.





Oracle Para sa Loop Syntax:

Ang sumusunod ay nagpapakita ng syntax ng 'para sa' loop sa PL/SQL:

MAGSIMULA
PARA sa loop_variable SA [lower_bound..upper_bound] LOOP
-- code na ipapatupad sa loop
END LOOP;
WAKAS;

Binibigyang-daan ka ng loop_variable na tukuyin ang isang loop na ginagamit upang kontrolin ang loop at ang lower at upper bounds. Ang upper at lower bounds ay tumutukoy sa mga value ng range kung saan nagaganap ang loop evaluation.



Oracle While Loops

Maaari din nating tukuyin ang 'habang' na mga loop sa PL/SQL gaya ng ipinakita ng sumusunod na syntax:

MAGSIMULA
HABANG kundisyon LOOP
-- pagkilos ng loop
END LOOP;
WAKAS;

Sa isang 'habang' loop, ang pagkilos ng loop ay paulit-ulit na isinasagawa habang ang kundisyon ay totoo.

Oracle Cursor Para sa Mga Loop

Sinusuportahan din ng Oracle ang mga loop na 'cursor para sa' na nagbibigay-daan sa amin na magsagawa ng isang hanay ng mga tagubilin para sa bawat hilera sa isang ibinigay na hanay ng resulta. Ang syntax ay maaaring ipahayag tulad ng sumusunod:

MAGSIMULA
PARA sa loop_variable IN (PUMILI ng column1, column2, ...
MULA sa talahanayan 1, talahanayan 2, ...
SAAN kundisyon) LOOP
-- pagkilos ng loop
END LOOP;
WAKAS;

Halimbawang Mga Loop sa Oracle

Ang mga sumusunod na halimbawa ay sumasaklaw sa mga pangunahing kaalaman sa pagtatrabaho sa para, habang, at para sa mga cursor loop sa Oracle.

Halimbawa ng Oracle Para sa Loop:

Ipinapakita ng halimbawang ito kung paano gumamit ng loop na 'para sa' upang i-print ang mga numero mula 1 hanggang 10.

MAGSIMULA
PARA sa i SA 1..10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END LOOP;
WAKAS;

Habang Halimbawa ng Loop:

Maaari kaming magsagawa ng katulad na pagkilos gamit ang isang while loop gaya ng ipinapakita sa sumusunod:

MAGSIMULA
MAGPAHAYAG
i NUMBER := 1;
MAGSIMULA
HABANG ako <= 10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
i := i + 1;
END LOOP;
WAKAS;
WAKAS;

Dapat itong magsagawa ng katulad na pagkilos sa loop na 'para'.

Halimbawa ng Cursor Para sa Loop:

Ipinapakita ng sumusunod kung paano gamitin ang loop na 'cursor para sa' para makuha ang buong pangalan ng customer:

MAGSIMULA
PARA SA empleyado SA (PUMILI first_name, last_name
MULA sa mga empleyado) LOOP
DBMS_OUTPUT.PUT_LINE(employee.first_name || ' ' || employee.last_name);
END LOOP;
WAKAS;

Halimbawang Output:

Konklusyon

Sa post na ito, nakatagpo ka ng tatlong pangunahing uri ng mga loop sa wikang Oracle PL/SQL. Maaari mong suriin ang dokumentasyon para mag-explore pa.