📅  最后修改于: 2023-12-03 15:18:35.940000             🧑  作者: Mango
在PL/SQL中,我们可以使用循环结构来重复执行一些操作。有3种不同类型的循环:WHILE、FOR和LOOP。
WHILE循环用于在指定条件为真时重复运行一系列语句。语法如下:
WHILE condition LOOP
statements;
END LOOP;
下面是一个示例程序,它使用WHILE循环来输出从1到10的数字:
DECLARE
counter NUMBER := 1;
BEGIN
WHILE counter <= 10 LOOP
DBMS_OUTPUT.PUT_LINE(counter);
counter := counter + 1;
END LOOP;
END;
这将输出以下内容:
1
2
3
4
5
6
7
8
9
10
FOR循环用于在指定的范围内重复运行一系列语句。语法如下:
FOR counter IN [REVERSE] lower_bound..upper_bound LOOP
statements;
END LOOP;
其中,lower_bound和upper_bound是循环的起始和结束值,counter是循环变量。
下面是一个示例程序,它使用FOR循环输出偶数数字:
DECLARE
counter NUMBER;
BEGIN
FOR counter IN 1..10 LOOP
IF MOD(counter, 2) = 0 THEN
DBMS_OUTPUT.PUT_LINE(counter);
END IF;
END LOOP;
END;
这将输出以下内容:
2
4
6
8
10
LOOP循环用于无限次执行一些操作,直到收到BREAK语句。语法如下:
LOOP
statements;
IF condition THEN
EXIT;
END IF;
END LOOP;
下面是一个示例程序,它使用LOOP循环来接受用户输入,直到用户输入“exit”:
DECLARE
input VARCHAR2(10);
BEGIN
LOOP
DBMS_OUTPUT.PUT('Enter input: ');
INPUT := UPPER(TRIM(DBMS_INPUT.READ_LINE));
IF INPUT = 'EXIT' THEN
EXIT;
END IF;
DBMS_OUTPUT.PUT_LINE('You entered: ' || INPUT);
END LOOP;
END;
这将接受用户输入,直到用户输入“exit”为止。
总之,PL/SQL的循环结构提供了一种灵活和强大的方式来处理需要重复执行的任务。