外部块里嵌套三个匿名块:
匿名块1:查询部门名称
匿名块2:更改部门地址
匿名块3:处理异常,插入新的部门
总结:外部匿名块包含三个内部匿名块,
(1)第一个嵌套块如果找不到数据会直接调到异常no_data_found里
(2)第二个嵌套块只有当第一个匿名块得到执行以后才能够执行
(3)第三个嵌套块,这个块首先插入数据,如果插入数据的时候发生错误,会触发嵌套块里的异常块。
declare
l_deptno number := '70';
l_loc varchar2(20) := 'BeiJing';
l_name varchar2(20);
begin
begin
--匿名块1:查询部门名称
select dname into l_name from t1 where deptno = l_deptno;
dbms_output.put_line(l_deptno || '部门名称为' || l_name);
end;
declare
v_deptno number := '20';
begin
--匿名块2:更改部门地址
update t1 set loc = l_loc where deptno = v_deptno;
commit;
end;
--- 匿名块3:处理异常,插入新的部门
exception
when no_data_found then
begin---在异常处理快内部嵌套块
insert into t1 values (l_deptno, 'HR'
PLSQL嵌套块
最新推荐文章于 2023-10-17 18:41:23 发布