首页 > 数据库 >Oracle PL/SQL 自治事务

Oracle PL/SQL 自治事务

时间:2023-03-30 21:34:42浏览次数:34  
标签:事务 自治 empno emp SQL Oracle id PL

自治事务是PL/SQL静态SQL的一个特性,可声明于存储过程、函数或触发器中。它是和主事务分开的事务,可以独立执行事务,不与主事务共享锁、资源,不受主事务提交的影响。自治事务可以用来记录日志,记录计数值,而不受主事务回滚的影响。

--创建自治事务的存储过程
create or replace procedure proc2 is
  PRAGMA AUTONOMOUS_TRANSACTION;
  emp_id number;
begin
  emp_id := 7782;
  update emp_2 set sal = sal + 1000 where empno = emp_id;
  commit;
end;

--在匿名块中调用自治事务的存储过程

declare
  emp_id number;
begin
  insert into emp_2
    select * from emp_2;
  select max(empno) into emp_id from emp_2 where empno = 7788;
  --调用自治事务的存储过程
  proc2;
  delete from emp where empno = emp_id;
  commit;
end;

标签:事务,自治,empno,emp,SQL,Oracle,id,PL
From: https://www.cnblogs.com/dengxing/p/17274400.html

相关文章

  • 使用 Oracle LogMiner 分析重做日志
    概述我们知道oracle的redo和归档日志,记录了数据库的事务的相关信息。在日常的数据库管理过程中,我们有时需要,查看特定时刻特定用户在数据库上执行的操作。这时我们可以通过用logminer分析日志文件获取相关信息。logminer分析归档日志文件所获得的信息并不是原始的操作信息,而是等......
  • NoSQL之Redis配置与优化
    一、数据库类型1.关系型数据库关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。SQL语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。主流的关系型数据库包括Oracle、MySQL、SQLSe......
  • MySQL
    1.mysql安装连接1.1安装mysql5.71、解压2、把这个包放到自己的电脑环境目录下3、配置环境变量4、新建mysql配置文件ini[mysq1d]#目录一定要换成自己的basedir=D:\Environmentmysq1-5.7.19\datadir=D:\Environment\mysq1-5.7.19\data\port=3306skip-grant-tables5、启......
  • 更改placeholder颜色
    /deep/input::-webkit-input-placeholder{color:#fff;}/deep/input::-moz-placeholder{/*MozillaFirefox19+*/color:#fff;}/deep/input:-moz-placeholder{/*MozillaFirefox4to18*/color:#fff;}/deep/input:-ms-input......
  • Mysql 事务隔离机制、锁机制、MVCC多版本并发控制隔离机制、日志机制、
    原子性(Atomicity)当前事务的操作要么同时成功,要么同时失败。原子性由undolog日志来实现。一致性(Consistency):使用事务的最终目的,由其它3个特性以及业务代码正确逻辑来实现。隔离性(lsolation):在事务并发执行时,他们内部的操作不能互相干扰,隔离性由MySQL的各种锁以及MVC......
  • 软件测试|web自动化测试神器playwright教程(八)
    前言selenium中提供了一个seleniumIDE的工具用于脚本录制,我们通过插件市场安装之后,便可以将我们对浏览器页面的操作录制成脚本,并输出成java或Python等语言的脚本,我们可以通过生成的脚本再次回放我们的操作。作为一个比selenium更加强大的web自动化测试工具,当然也拥有录制的功能了,......
  • 实战SQL优化(以MySQL深分页为例)
    1准备表结构CREATETABLE`student`(`id`intNOTNULLAUTO_INCREMENT,`user_no`varchar(50)CHARACTERSETutf8mb4COLLATEutf8mb4_0900_ai_ciNULLDEFAULTNULL,`user_name`varchar(50)CHARACTERSETutf8mb4COLLATEutf8mb4_0900_ai_ciNULLDEFAULTNULL......
  • MySQL常用命令
    常用命令:https://blog.csdn.net/qq_38328378/article/details/80858073最详细的:https://blog.csdn.net/qq_34115899/article/details/81190461......
  • WebUploader大文件上传解决方案支持分片断点上传
    ​ 前言文件上传是一个老生常谈的话题了,在文件相对比较小的情况下,可以直接把文件转化为字节流上传到服务器,但在文件比较大的情况下,用普通的方式进行上传,这可不是一个好的办法,毕竟很少有人会忍受,当文件上传到一半中断后,继续上传却只能重头开始上传,这种让人不爽的体验。那有没有......
  • MySQL数据库怎么创建表?MySQL数据库基础知识
    MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库......