• Oracle事务处理—隔离级别



    基本概念:
    事务是把对数据库的一系列操作[dml]看作一个整体,要么全部成功,要么全部失败,利用事务我们可以保证数据的完整性,事务具有原子性

    事务和锁:
    当执行事务操作时[dml],oracle会在被作用的表上加锁,防止其它用户改表表的结构,这里对我们用户来讲是非常重要的

    提交事务:
    当执行使用commit语句可以提交事务,
    当执行了commit语句后,会确认事务的变化、结束事务、删除保存点、释放锁,
    当使用commit语句结束事务后,其它会话将可以查看到事务变化后的新数据

    回退事务:
    当执行rollback时,通过指定保存点可以回退到指定的点

    事务的几个重要操作:
    ①设置保存点
    savepoint 保存点名
    ②取消部分事务
    rollback to 保存点名
    ③取消全部事务
    rollback

    事务的隔离级别
    定义:事务的隔离级别用于指定事务的隔离程度

    隔离级别             脏读    不可重复读      幻读
    读已提交(Read committed)   x       V         V
    可串行化(Serializable )      x       x         x
    只读(read only)          x        x         x

    脏读[dirty reads]:[Oracle中不会出现脏读]
    当一个事务读取另一个事务尚[未提交]的修改时,产生脏读

    不可重复读[non-repetable reads]:
    同一查询在同一事务中多次进行,由于其它[提交事务]所做的[修改]或[删除],每次返回不同的结果集,此时发生非重复读

    幻读[phantom read]:
    同一查询在同一事务中多次进行,由于其它[提交事务]所做的[插入]操作,每次返回不同的结果集,此时发生幻读


    注意事项:
    ①Oracle默认的隔离级别:read committed
    ②serializable就是使事务看起来像是一个接着一个的顺序的执行
    ③serializable和read only 的区别:
    serializable:可执行DQl和DML
    read only:只能执行DQl

  • 相关阅读:
    Android自动化测试框架UIAutomator原理浅析
    UiAutomator和Appium之间的区别2
    UiAutomator、UiAutomator2、Bootstrap的关系
    好的博客和网站
    appium介绍和工作原理
    UiAutomator1.0 与 UiAutomator2.0
    Jenkins之配置GitHub-Webhook2
    jenkins部署github项目持续集成
    Windows下安装的Jenkins修改默认端口号8080(修改配置文件的方式)
    Git使用教程
  • 原文地址:https://www.cnblogs.com/qintangtao/p/2744780.html
Copyright © 2020-2023  润新知