Oracle的自治事务
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,自治事务(autonomous transaction)允许你创建一个"事务中的事务",它能独立于其父事务提交或回滚。利用自治事务,可以挂起当前执行的事务,开始一个新事务,完成一些工作,然后提交或回滚
千家信息网最后更新 2026年11月01日Oracle的自治事务
自治事务(autonomous transaction)允许你创建一个"事务中的事务",它能独立于其父事务提交或回滚。利用自治事务,可以挂起当前执行的事务,开始一个新事务,完成一些工作,然后提交或回滚,所有这些都不影响当前所执行事务的状态。自治事务提供了一种用PL/SQL控制事务的新方法,可用于:
顶层匿名块;
本地(过程中的过程)、独立或打包的函数和过程;
对象类型的方法;
数据库触发器。
使用例子演示自治事务如何工作
--创建测试表用于保存信息zx@ORCL>create table t ( msg varchar2(25) );Table created.--创建自治事务的存储过程zx@ORCL>create or replace procedure Autonomous_Insert 2 as pragma autonomous_transaction;---指示自治事务语句 4 begin 5 insert into t values ( 'Autonomous Insert' ); 6 commit; 7 end; 8 /Procedure created.--创建普通存储过程zx@ORCL>create or replace procedure NonAutonomous_Insert 2 as 3 begin 4 insert into t values ( 'NonAutonomous Insert' ); 5 commit; 6 end; 7 /Procedure created.
观察使用PL/SQL代码中非自治事务的行为
zx@ORCL>begin 2 insert into t values ( 'Anonymous Block' ); 3 NonAutonomous_Insert; 4 rollback; 5 end; 6 /PL/SQL procedure successfully completed.zx@ORCL>select * from t;MSG---------------------------------------------------------------------------Anonymous BlockNonAutonomous Insert
可以观察到非自治事务的过程中的commit也把调用它的父事务也提交了,而父事务中的rollback没有起到作用。
再观察使用PL/SQL代码中非自治事务的行为
zx@ORCL>delete from t;2 rows deleted.zx@ORCL>commit;Commit complete.zx@ORCL>begin insert into t values ( 'Anonymous Block' ); Autonomous_Insert; rollback;end; 6 /PL/SQL procedure successfully completed.zx@ORCL>select * from t;MSG---------------------------------------------------------------------------Autonomous Insert
可以看到,自治事务过程中的commit只把它本身的事务提交了,而对于父事务的语句没有起到作用,而父事务中的rollback对自治事务中的语句也没有作用。
事务
自治
过程
作用
语句
观察
代码
方法
行为
中非
存储
工作
独立
普通
例子
信息
函数
对象
指示
数据
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡豆
什么是科技互联网
小米移动互联网科技园
高科技互联网
互联网属科技
科技互联网技术
易互联网科技有限公司
广州宏创互联网科技
美国互联网黑科技
互联网高科技股票
注册互联网科技公司经营范围大全
明优互联网科技有限公司
科技大学互联网
为客找房互联网科技公司怎么样
沐思想互联网科技有限公司
杭州披云加互联网科技有限公司
张召忠谈中国互联网科技
西安有哪些互联网高科技企业
科技美学互联网 艺术
株洲百竞科技的互联网营销顾问
咖啡豆
科技互联网
互联网科技公司华为
互联网科技的英文
科技大学互联网专业好不好
青岛中康互联网医疗科技有限公司
湖南诚度互联网科技有限公司
福建科技产业互联网发展
互联网风格科技公司名称
互联网金融运营模式中的金融科技