您的位置:首页 > 数据库 > Oracle

Oracle的并发控制(事务)

2014-12-15 12:28 253 查看
1、事务的ACID特性:Atomicity 原子性、Consistency 一致性、Isolation 隔离性、Durability 持久性。

2、事务的操作

①事务提交 SQL>Commit; ②事务回滚 SQL>Rollback; ③保存点 SQL>Savepoint 保存点名; Rollback To 保存点名;

注意:I.已经提交的事务不能进行回滚。 II.回滚到某个保留点的事务将撤销保留点之后的所有修改。

④Set Transaction 语句:用来设置事务的各种属性。

属性有①指定事务的隔离层 ②规定回滚事务时所使用的存储空间 ③命名事务

3、结束事务

以下情况Oracle认为一个事务结束:

①Commit

②Rollback

③执行DDL语句(Create、Drop、Alter),事务被提交

④断开与Oracle的连接,事务被提交

⑤用户进程意外被终止,事务被回滚

简单说就是提交和回滚两种结束方式,只是提交和回滚的情况不同。

4、隔离级别

通过一些现象,可以反应隔离级别效果。这些现象有:①更新丢失 ②脏读 ③非重复读 ④幻象

脏读非重复读幻象
读未提交
读提交(默认)不会
重复读不会不会
序列化不会不会不会
5、设置隔离级别

在Oracle中,在事务开始之前可以通过以下方式设置一个事务的隔离级别:

SET TRANSATION ISOLATION LEVEL READ COMMITTED;(Oracle默认的事务隔离级别)

SET TRANSATION ISOLATION LEVEL SERIALIZABLE;

SET TRANSATION READ ONLY;

可以在单独的会话中设置整个会话的隔离级别:

ALTER SESSION SET ISOLATION_LEBEL SERIALIZABLE;

ALTER SESSION SET ISOLATION_LEBEL READ COMMITED;

ALTER SESSION SET ISOLATION_LEBEL READ ONLY;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: