C/C++教程

oracle事务

本文主要是介绍oracle事务,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

脏读:两个事物,一个事务修改数据 未提交;另一个事务查询数据
不可重复读:同一个事务,多次读取同数据结果不同(其实是另个一个事务修改了数据) ---对应的是修改
幻象读:同一个事务,多次读取一个范围的数据,读取的记录数不同---对应insert

读未提交 read uncommit:可以读未提交的数据
读提交 read commit:只有读提交过的数据
select * from table where id=1 for update
可重复读 reapeat read
序列化 serializable:
这是数据库最高的隔离级别,事务“串行化顺序执行”,
大多数数据库默认的事务隔离级别是Read committed,比如Sql Server , Oracle。Mysql的默认隔离级别是Repeatable read。

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
READ UNCOMMITTED 幻象读、不可重复读和脏读都容许。
READ COMMITTED 容许幻象读、不可重复读,不容许脏读
REPEATABLE READ 容许幻象读,不容许不可重复读和脏读
SERIALIZABLE 幻象读、不可重复读和脏读都不容许
select * from A where id=2 for update skip locked

 

参考资料

基于oracle的sql优化 https://www.cnblogs.com/grl214/p/7694184.html

这篇关于oracle事务的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!