在PL/SQL編程語言中,EXIT語句有以下兩種用法:
當循環(huán)中遇到EXIT語句循環(huán)立即終止,程序控制繼續(xù)下一個循環(huán)語句后面。
如果使用嵌套循環(huán)(即一個循環(huán)內(nèi)的另一個循環(huán)),EXIT指令將停止最內(nèi)層循環(huán)的執(zhí)行,并開始執(zhí)行的下一行代碼的程序段之后。
在PL/SQL EXIT語句的語法如下:
EXIT;
DECLARE a number(2) := 10; BEGIN -- while loop execution WHILE a < 20 LOOP dbms_output.put_line ('value of a: ' || a); a := a + 1; IF a > 15 THEN -- terminate the loop using the exit statement EXIT; END IF; END LOOP; END; /
當上述代碼在SQL提示符執(zhí)行時,它產(chǎn)生了以下結(jié)果:
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 PL/SQL procedure successfully completed.
在EXIT-WHEN語句允許的條件下,在WHEN子句進行評估計算。如果條件為真,循環(huán)完成并控制立即傳遞到END LOOP語句。
以下是EXIT WHEN語句的兩個重要方面:
直到條件為true,EXIT-WHEN語句就像一個空語句,除了評估計算條件,并不會終止循環(huán)。
循環(huán)內(nèi)部的語句必須更改條件的值。
PL/ SQL EXIT WHEN語句的語法如下:
EXIT WHEN condition;
EXIT WHEN語句使用EXIT語句條件代替條件語句 if-then 退出一樣
DECLARE a number(2) := 10; BEGIN -- while loop execution WHILE a < 20 LOOP dbms_output.put_line ('value of a: ' || a); a := a + 1; -- terminate the loop using the exit when statement EXIT WHEN a > 15; END LOOP; END; /
當上述代碼在SQL提示符執(zhí)行時,它產(chǎn)生了以下結(jié)果:
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 PL/SQL procedure successfully completed.