ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle自治事务测试

oracle自治事务测试

原创 Linux操作系统 作者:monica_yaotf 时间:2012-03-25 12:12:51 0 删除 编辑
1.建立2张测试表
create table test1(a number,b varchar2(50));
create table test2(a number,b varchar2(50));
 
2.
--外层存储过程,在里面做回滚
create or replace procedure self_test1
as
-- pragma autonomous_transaction;
 i integer;
begin
  for i  in 1..100 loop
    insert into test1 values(i,'monica'||i);
     self_test2(i);
   end loop;
   rollback;
end;
/
 
--内层存储过程,做提交操作
 
create or replace procedure self_test2(i in integer)
as
 pragma autonomous_transaction;--表示是自治事务
 j integer;
begin
       for j in 1..10 loop
           insert into test2 values(j,'i is '||i);
           commit;
        end loop;
end;
/
 
执行外层存储过程test1,察看2张表内的数据,如下:
 
 
可以看出,自治事务的确实现了内层事务的隔离

pragma.jpg

pragma2.jpg

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7353848/viewspace-719457/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-03-27

  • 博文量
    73
  • 访问量
    320845