oracle数据库事务相关【weber出品必属精品】
事务的概念:
事务:一个事务由一组构成一个逻辑操作的DML语句组成事务有开始有结束,事务以DML语句开始,以Conmmit和Rollback结束。
以下情况会使得事务结束:1. 执行COMMIT 或者 ROLLBACK 语句
2. 执行DDL或者 DCL语句
3. 用户退出
4. 系统崩溃
- 一个事务可以包含下列语句:
1. 对数据做出一致性修改的DML语句
2. 一个 DDL 语句
3. 一个 DCL语句
- DDL与和DCL语句执行的过程:
1. 首先发出COMMIT;
2. 执行对数据字典的DML操作
3. 如果成功,commit,如果失败,rollback
- 保证数据的一致性:没有提交的数据,其他的用户看不到
在数据永久改变之前,检查数据的改变
对逻辑相关的操作进行分组
- 控制事物:保存点(savepoint)
SQL> select * from t; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ------ --------- ----- --------- ----- ----- ------
ALLEN SALESMAN -DEC-
y
w SQL> savepoint s1; Savepoint created. SQL> insert into t (empno,ename) values(,'b'); row created. SQL> savepoint s2; Savepoint created. SQL> delete t; rows deleted. SQL> select * from t; no rows selected SQL> rollback to savepoint s2; Rollback complete. SQL> select * from t; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ------ --------- ----- --------- ----- ----- ------
ALLEN SALESMAN -DEC-
y
w
b SQL> rollback to savepoint s1; Rollback complete. SQL> select * from t; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ------ --------- ----- --------- ----- ----- ------
ALLEN SALESMAN -DEC-
y
w ----这里要注意了啊,因为rollback到了的s1这个保存点,也就不可以在rollback到s2这个保存点---因为s1中这个保存点没有记录到s2保存点的信息----
SQL> rollback to savepoint s2;
rollback to savepoint s2
*
ERROR at line :
ORA-: savepoint 'S2' never established
oracle数据库事务相关【weber出品必属精品】的更多相关文章
- 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】
<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】
安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...
- 创建和管理表【weber出品必属精品】
创建表 必须有 : 1. CREATE TABLE 的权限 SQL> conn /as sysdba 已连接. SQL> create user test default tablespa ...
- 静默安装ORACLE【weber出品必属精品】
安装配置系统环境安装linux ,所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭) 打开终端,执行如下命令,检查安装包,没有的都要安装 make, glibc, liba ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(三)【weber出品必属精品】
数据库软件和数据库都建好了,基本上可以说完成90%的工作,但是美中不足的就是企业管理器还没有安装好,现在我们就开始安装企业管理器吧. 安装之前我们先将补丁给补上.补丁我们也是采用禁默安装.补丁:p83 ...
- 数据库对象(视图,序列,索引,同义词)【weber出品必属精品】
视图视图的定义:视图就是一个查询的别名为什么使用视图限制数据的存取 SQL> conn /as sysdba 已连接. SQL> grant create view to scott; 授 ...
- linux删除ORACLE【weber出品必属精品】
关闭数据库 sqlplus / as sysdba shutdown abort 清除oracle软件 su - oracle cd $ORACLE_BASE rm -rf * rm -rf /etc ...
- ORACLE SQL单行函数(三)【weber出品必属精品】
16.L:代表本地货币符,这个和区域有关.这个时候我们想来显示一下人民币的符号:¥ $ vi .bash_profile ---写入如下内容: export NLS_LANG='SIMPLIFIED ...
- ORACLE SQL单行函数(一)【weber出品必属精品】
1.SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数 ...
随机推荐
- Linux下的静态IP配置【weber出品】
配置Linux下的静态IP地址 因为服务器的IP地址是固定的,不像我们自己家的笔记本的IP是动态的.所以我们要将这个地址给写成静态的. 直接编辑这个这个配置文件即可: vi /etc/sysconfi ...
- js中关于一个数组中最大、最小值以及它们的下标的输出的一种解决办法
今天在学习js中的数组时,遇到的输出一个数组中最大.最小值以及它们的下表,以下是自己的解决方法! <script type="text/javascript"> var ...
- Implement Insert and Delete of Tri-nay Tree
问题 Implement insert and delete in a tri-nary tree. A tri-nary tree is much like a binary tree but wi ...
- sublime3配置及插件安装
1.下载https://github.com/wbond/sublime_package_control中的zip文件,解压后将文件夹名更改为Package Control. 2.将1中的文件夹放入s ...
- 面向对象重写(override)与重载(overload)区别---转载“竹木人”
一.重写(override) override是重写(覆盖)了一个方法,以实现不同的功能.一般是用于子类在继承父类时,重写(重新实现)父类中的方法. 重写(覆盖)的规则: 1.重写方法的参数列表必须完 ...
- IE,火狐,谷歌浏览器下js判断滚动条是否已拉到页面最底部
E/FF/Chrome下document.documentElement和document.body的 scrollHeight/scrollTop/clientHeight 以及判断滚动条是否已拉到 ...
- lazy loading img 图片延迟加载
http://yunpan.cn/cVsjPW6dgbcsh (提取码:b5db)
- c# Random太快产生的随机数会重复
c# Random快速连续产生相同随机数的解决方案 Random类是一个产生伪随机数字的类,它的构造函数有两种,一个是直接New Random(),另外一个是New Random(Int32),前者是 ...
- [SQL注入2]FROM SQL INJECTION TO SHELL: POSTGRESQL EDITION
FROM SQL INJECTION TO SHELL: POSTGRESQL EDITION 这里先介绍一下POSTGRESQL.这是一款数据库管理系统,与oracle是同类型软件.08年左右的市场 ...
- cf C. Vasya and Robot
http://codeforces.com/contest/355/problem/C 枚举L和R相交的位置. #include <cstdio> #include <cstring ...