1、循环语句LOOP…EXIT WHEN…END LOOP
SET ServerOutputON;
DECLARE
v_Num INTEGER := 1;
v_Sum INTEGER := 0;
BEGIN
LOOP
v_Sum := v_Sum + v_Num;
dbms_output.put_line(v_Num);
EXIT WHEN v_Num = 3;
dbms_output.put_line(' + ');
v_Num := v_Num + 1;
END LOOP;
dbms_output.put_line(' = ');
dbms_output.put_line(v_Sum);
END;
2、 循环语句FOR…IN…LOOP…END LOOP
SET ServerOutputON;
DECLARE
v_Num INTEGER;
v_Sum INTEGER := 0;
BEGIN
FOR v_Num IN 1..3
LOOP
v_Sum := v_Sum + v_Num;
dbms_output.put_line(v_Num);
IF v_Num < 3 THEN
dbms_output.put_line(' + ');
END IF;
END LOOP;
dbms_output.put_line(' = ');
dbms_output.put_line(v_Sum);
END;
3、异常申明
EXCEPTION
WHEN <异常情况名>THEN
<异常处理代码>
WHEN <异常情况名>THEN
<异常处理代码>
……
WHEN OTHERS THEN
<异常处理代码>
DECLARE
v_result NUMBER(10):=0;
BEGIN
v_result:= 100/0;
DBMS_OUTPUT.PUT_LINE('结果是:'||v_result);
EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE('除数是零!默认用1替代除数,结果是:'||100/1);
END;
4、游标的使用