数据库只读事物和读写事物理解

Oracle默认情况下(没有事务) 保证了SQL语句级别的读一致性,即在一条SQL语句执行期间,它只会看到执行前点的数据状态,而不会看到执行期间数据被其他SQL改变的状态。

所以如果执行多条SQL的时候呢?比如你做一个报表查询,在执行完第一条sql的时候,执行第二条查询SQL,而这个之间有数据被改变了,第二条数据查询就有可能不一致 而Oracle的只读查询则保证了事务级别的读一致性,即在该事务范围内执行的多条SQL都只会看到执行前点的数据状态,而不会看到事务期间的任何被其他 SQL改变的状态。

没有事务的时候,在执行一条sql语句看到执行前点的数据状态,保证数据一致性 只读事务,在执行多条sql语句看到执行前点的数据状态,保证数据一致性

备注: 1.事物与事物(不管是只读事物还是读写事物),事物与非事物SQl都可以并发执行(即:在一个事物执行过程中,其他事物或非实物SQL也是可以执行的,不需要等待该事物执行完毕)

2.只读事物期间,数据可以被任何任何SQL改变,但是只读事物是没法看到改变之后的数据的,只能看到改变之前的快照数据

3.进行上述理论验证的时候,如果用到chrome等浏览器,请不要在chrome中打开统一链接多次,因为chrome默认统一url进行排队请求策略,可以用多浏览器打开统一链接进行测试

事务四大特性(简称ACID) 1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。

2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。

3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。

4、持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。

转载于:https://my.oschina.net/yiqifendou/blog/753149

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值