PLSQL事务
1 使用set transaction设置事务属性
2 只读事务 set transaction read only
3 读写事务 set transaction write;
4 在进行数据统计分析工作时,一般都会查询数据库中的多个表,此时可以将查询统计
5 工作定义为只读事务, 防止进行DML操作
6 --只读事务示例
7 declare
8 v_1981 number(2);
9 v_1982 number(2);
10 v_1983 number(2);
11 begin
12 commit;
13 set transaction read only name '统计年度入职数据';
14 select count(empno) into v_1981 from emp where
15 to_char(hiredate,'yyyy')='1981';
16 select count(empno) into v_1982 from emp where
17 to_char(hiredate,'yyyy')='1982';
18 select count(empno) into v_1983 from emp where
19 to_char(hiredate,'yyyy')='1983';
20 commit;
21 dbms_output.put_line('1981年入职人数:'||v_1981);
22 dbms_output.put_line('1982年入职人数:'||v_1982);
23 dbms_output.put_line('1983年入职人数:'||v_1983);
24 end;
25
26
27 --不同块中的异常作用域级别
28 declare
29 e_outerexception exception;
30 begin
31 declare
32 e_innerexception exception;
33 begin
34 raise e_innerexception;
35 raise e_outerexception;
36 end;
37 --raise e_innerexception; --在外层异常出发内存块异常时非法的
38 --外层异常覆盖内层异常
39 exception raise e_outerexception;
40 when others then
41 dbms_output.put_line('出现了错误'||'错误编号'
42 ||SQLCODE||'错误名称'||sqlerrm);
43 end;
44 --exception_init使用示例 把Oracle系统异常关联到我们自定义异常
45 declare
46 e_missingnull exception;
47 pragma exception_init (e_missingnull,-1400);
48 begin
49 insert into emp(empno) values(null);
50 commit;
51 exception
52 when e_missingnull then
53 dbms_output.put_line('触发了ORA-1400错误!'||sqlerrm);
54 rollback;
55 end;
PLSQL事务的更多相关文章
- SQL记录-PLSQL事务
PL/SQL事务 数据库事务是一个工作的原子单元,其可以由一个或多个相关的SQL语句组成.所谓的原子性就是数据库的修改所带来的构成事务的SQL语句可以集体被提交,即永久到数据库或从数据库中(撤消) ...
- plsql programming 14 DML和事务管理
我们可以把多个SQL语句集中在一起, 在逻辑上组成一个事务, 从而保证这些操作或者全部被保存到数据库(用sql的说法就是”提交”), 或者被整体驳回(用sql的说法是“回滚”). 事务: ACID 原 ...
- .Net程序员学用Oracle系列(27):PLSQL 之游标、异常和事务
1.游标 1.1.游标属性 1.2.隐式游标 1.3.游标处理及案例 2.异常 2.1.异常类别 2.2.异常函数 2.3.异常处理及案例 3.事务 3.1.开始事务.结束事务 3.2.自治事务 3. ...
- plsql常用函数汇总
在SQLPLUS下,实现中-英字符集转换alter session set nls_language='AMERICAN';alter session set nls_language='SIMPLI ...
- PLSQL开发笔记和小结(转载)
***************************************** PLSQL基本结构 ***************************************** 基本数据 ...
- oracle教程:PLSQL常用方法汇总
oracle教程:PLSQL常用方法汇总 在SQLPLUS下,实现中-英字符集转换alter session set nls_language='AMERICAN';alter session set ...
- plsql programming 16 动态SQL和动态PLSQL
动态SQL 是指在执行时才构建 SQL 语句, 相对于静态 sql 的编译时就已经构建. 动态PLSQL 是指整个PL/SQL代码块都是动态构建, 然后再编译执行的. 作用: 1. 可以支持 DDL ...
- Oracle基础 PL-SQL编程基础(4) 异常处理
异常处理: 即使良好的PL-SQL程序也会遇到错误或者未预料的事件,一个优秀的程序都应该能够处理各种出错情况,尽可能的从错误中恢复.程序在运行时出现的错误成为异常.发生异常后,语句讲终止执行,PLSQ ...
- Oracle之PLSQL总结
基本数据类型变量 1. 基本数据类型 Number 数字型 Int 整数型 Pls_integer 整数型,产生溢出时出现错误 Binary_integer 整数型,表示带符号 ...
随机推荐
- 用JavaScript编写气泡
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- xcode10不兼容问题解决方法,framework编译脚本
XCode10报错:Build/Intermediates.noindex/XCBuildData/build.db": disk I/O error 更改-scheme 为-target ...
- Unity 游戏框架搭建 2018 (一) 架构、框架与 QFramework 简介
约定 还记得上版本的第二十四篇的约定嘛?现在出来履行啦~ 为什么要重制? 之前写的专栏都是按照心情写的,在最初的时候笔者什么都不懂,而且文章的发布是按照很随性的一个顺序.结果就是说,大家都看完了,都还 ...
- iOS原生分享功能
iOS_系统原生分享 - CSDN博客 通过UIActivityViewController实现更多分享服务 - 简书 UIActivity - UIKit _ Apple Developer Doc ...
- Windows 安装配置memcached+php的教程,以及相关资源下载
第一步:安装 Memcached 服务 第二步:让php加载memcached.dll扩展 详情步骤如下: 第一步:安装 Memcached 服务 1.下载 Memcached 密码:jzay.压缩 ...
- python通过xlsxwriter模块将文字写入xlsx文件
#今天和大家一起学习通过python的xlsxwriter模块 xlsxwriter模块主要用来生成excel表格,插入数据.插入图标等表格操作等. 环境:python 3 1)安装 xlsxwrit ...
- 用CSS/CSS3 实现水平居中和垂直居中,水平垂直居中的方式
一.水平居中 (1)行内元素解决方案:父为块元素+text-align: center 只需要把行内元素包裹在一个属性display为block的父层元素中,并且把父层元素添加如下属性即可: 使用te ...
- promise 格式
promise执行过程(test) var arr =new Array() var obj =new Object() let p =new Promise(function(resolve,rej ...
- 关于if与switch的使用与区别
这是if语句: if (条件表达式1){ //条件判断 //n多语句1 }else if(条件表达式2){ //n多语句2 }else if(条件表达式3){ //n多语句3 } ... ... el ...
- string 模块
string 说明:string 模块保留了很多有用的常量和类,用来处理 string 和 unicode 对象. 作用:包含处理文本的常量和类. capwords( ) capwords( ) 的作 ...