循环控制: loop循环: declare v_num number :=1; begin loop dbms_output.put_line(v_num); v_num:=v_num+1; exit when v_num>=10; end loop; end; while循环: declare v_num number :=1; begin while v_num<10 loop dbms_output.put_line(v_num); v_num:=v_num+1; end loop; end; for循环: begin for v_num in 1..10 loop dbms_output.put_line(v_num); end loop; end; 异常处理: 异常: declare v_name emp.ename%type; begin select ename into v_name from emp where empno=&输入员工编号; dbms_output.put_line(v_name); dbms_output.put_line(33/0); exception when no_data_found then dbms_output.put_line(&#39;没有对应的员工&#39;); dbms_output.put_line(&#39;继续&#39;); when zero_divide then dbms_output.put_line(&#39;被除数不能为0&#39;); end; 自定义异常: declare v_num number; v_e1 exception; begin if v_num is null then raise v_e1; end if; exception when v_e1 then dbms_output.put_line(&#39;你错了&#39;); end; 传播异常: begin raise_application_error(-20001, &#39;你就是错了,出去&#39;); end; declare v_name emp.ename%type; begin select ename into v_name from emp where empno=&输入员工编号; dbms_output.put_line(v_name); dbms_output.put_line(33/0); exception when others then dbms_output.put_line(sqlerrm); end;