oracle中的事务
事务
概述:通过sql 对数据库进行操作时,同时执行成功或失败,且数据完整性一致。
链接到oracle的用户(例如plsql或sqlplus)会形成一个session, 此时对数据库的更新操作,不会立即修改数据,不提交的情况下,可以进行回滚操作。
rollback 回滚事务(数据被提交将无法回滚)
commit 提交事务
例如:rollback
----查询结果是王五
> select * from table where name='王五';
-----王五更新成李四
> update table set name='李四' where name='王五';
----再次查询王五,查不到数据;-查询李四可以查询到数据
> select * from table where name in ('王五', '李四');
---此时进rollback操作,回滚数据
> rollback;
---查询王五可以查到结果,查询李四查不到数据
> select * from table where name in ('王五', '李四');
例如:commit
----查询结果是王五
> select * from table where name='王五';
-----王五更新成李四
> update table set name='李四' where name='王五';
----再次查询王五,查不到数据;-查询李四可以查询到数据
> select * from table where name in ('王五', '李四');
---此时进commit操作,回滚数据
> commit;
---查询王五可以查不到结果,查询李四查到数据
> select * from table where name in ('王五', '李四');
---进行回滚
> rollback;
---在查询数据,发现查询结果还是李四,说明已经提交数据修改,无法回滚
> select * from table where name in ('王五', '李四');
死锁
多用户同时修改一条数据,且最先修改数据的那个用户的session未提交数据,则其他用户的session无法修改这条数据,一直处于等待对方commit后
oracle中的事务的更多相关文章
- oracle中事务处理--事务隔离级别
概念:隔离级别定义了事务与事务之间的隔离程度. ANSI/ISO SQL92标准定义了一些数据库操作的隔离级别(这是国际标准化组织定义的一个标准而以,不同的数据库在实现时有所不同). 隔离级别 脏读 ...
- 【Oracle】浅析Oracle中的事务
1. 什么是事务 在数据库中事务是工作的逻辑单元,一个事务是由一个或多个完成一组的相关行为的SQL语句组成,通过事务机制确保这一组SQL语句所作的操作要么都成功执行,完成整个工作单元操作,要么一个也不 ...
- 检查Oracle 中死事务的语句
SQL> SELECT KTUXEUSN, KTUXESLT, KTUXESQN, /* Transaction ID */ 2 KTUXESTA Status, KTUXECFL Flags ...
- Oracle并发控制、事务管理学习笔记
(a)基本概念 锁的2种最基本.最简单的类型:排他锁(eXclusive lock,即X锁).共享锁(Share lock,即S锁). 不同级别的锁定协议及其作用: 申请的锁 及其作用 锁定协议 修改 ...
- [转]oracle中使用set transaction设置事务属性
本文转自:http://yedward.net/?id=24 set transaction语句允许开始一个只读或者只写的事务,建立隔离级别或者是为当前的事务分配一个特定的回滚段.需要注意的是,set ...
- 事务的隔离级别以及oracle中的锁
事务的概念及特性 事务,一般是指要做的或所做的事情.在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit). 例如:在关系数据库中,一个事务可以是一条SQL语句,一组SQL语 ...
- Oracle中-事务-序列-视图-数据类型笔记
事务(Transaction) 事务(Transaction)是一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位. 事务是为了保证数据库的完整性 在o ...
- (转)Oracle存储过程中的事务
本文转载自:http://www.cnblogs.com/linjiqin/archive/2011/04/18/2019990.html 1.事务用于确保数据的一致性,由一组相关的DML语句组成,该 ...
- Oracle中nvl()、instr()、及执行多条sql事务操作
Oracle的Nvl函数 nvl( ) 函数 从两个表达式返回一个非null 值. 语法 NVL(eExpression1, eExpression2) 参数 eExpression1, eExpre ...
随机推荐
- 各种常用的JSON接口
这里为大家搜集了一些能够返回JSON格式的服务接口.部分需要用JSONP调用. 其中一些接口提供用例参照:http://www.bejson.com/webInterface.php 天气接口 气象局 ...
- ES5 object方法整理
Object.getPrototypeOf(object):调用对象父类原型上的方法; function Person(){ this.method1 = function(){alert(1)} } ...
- [WC2016]挑战NPC
Sol 这做法我是想不到\(TAT\) 每个筐子拆成三个相互连边 球向三个筐子连边 然后跑一般图最大匹配 这三个筐子间最多有一个匹配 那么显然每个球一定会放在一个筐子里,一定有一个匹配 如果筐子间有匹 ...
- Python-模块3-re
今天我们就说一个模块,那就是re,不过想要了解re模块,我们得先了解一下什么是正则表达式,有助于我们更好的学习re模块 一.正则表达式 首先, 我们在网页上进行注册或者登陆的时候经常能看到一些格式上的 ...
- aop postsharp的使用:在方法进入/成功/失败/退出时获取方法名和参数值
1.nuget安装postsharp 2.编写attribute标记 [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMult ...
- SharePoint 2013 - REST API about Security
1. 获取当前用户信息(current user): var currentUserInfo = "{0}/_api/Web/CurrentUser"; // {0} -> ...
- 搭建git远程仓库
基于本地协议搭建git远程仓库 1.任意目录下执行git init -bare创建裸仓库,建议目录名称以.git结尾 2.共享此目录,windows下右键裸仓库目录,切换到共享面板设置完成即可获取共享 ...
- error LNK1104: 无法打开文件“libzmq.lib”
vs 错误: error LNK1104: 无法打开文件“libzmq.lib” 解决方法: 你自己新建项目后,需要操作 项目>属性>链接器>常规>附加库目录>,然后把 ...
- February 2 2017 Week 5 Thursday
Only do what your heart tells you. 随心而行. My heart tells me that I should leave here and go back to X ...
- 使用nodejs代码在SAP C4C里创建Individual customer
需求:使用nodejs代码在SAP Cloud for Customer里创建Individual customer实例. 代码: var createAndBind = require('../je ...