zoukankan      html  css  js  c++  java
  • Oracle事务控制总结

    一、Oracle事务控制:
         1、组成单个逻辑工作单元的一系列操作被称为事务。
         2、数据库事务组成:
              1、0~多条DML语句
              2、1条DDL(Data Define Language)语句
              3、1条DCL(Data Control Language)语句
         3、事务特性(ACID):
              -原子性(Atornicity)
              -一致性(Consistency)
              -隔离性(Isolation)
              -持久性(Durability)
         4、事务的开始和结束
          1、事务开始于第一条可执行语句
          2、事务结束:
             -遇到commit 或rollback语句
             -遇到DDL 或DCL语句
             -用户会话结束
             -系统崩溃
       5、事务的提交和回滚
            显式的提交和回滚操作是为了更好的保证数据的一致性,下述情况下事务会被自动提交:
          -执行一个DDL语句
          -执行一个DCL语句
          -正常结束会话
         -会话异常终止/系统崩溃时事务被自动回滚
         6、提交/回滚前数据状态
         -当前事务中数据状态的改变是可以恢复的
         -当前事务中的DML操作结果只对当前用户(会话)可见,其它用户(会话)看不到当前事务中数据状态的改变,直到当前事务结束。
         -当前事务中DML语句所涉及到的行被锁定,其它用户(会话)不能对其进行修改操作。
         7、事务提交后数据状态
         -数据的修改永久生效,不可再撤消
         -数据以前的状态永久丢失,无法恢复
         -所有的用户(会话)都将看到操作后的结果
         -记录锁被释放,其它用户可对这些进行修改操作
         -事务中的保存点(savepoints)被清除
         8、事务回滚后数据状态
         -数据的修改被撤消
         -数据恢复到修改前的状态
         -记录锁被释放
         9、保存点
             ---通过保存点在当前的事务中创建标记,将来可回退到指定的标记(保存点)处,实现事务的部分回滚。
         ---用法举例
           insert into dept values (22,'adf','BeiJing');
           insert into dept values (23,'fda','Shanghai');
           savepoint p1;
           insert into dept values (24,'gdf','Tianjing');
           select * from dept; 
           rollback to p1;
           select * from dept;

  • 相关阅读:
    安亦行
    [SCOI2010]连续攻击游戏 二分图匹配
    [USACO11JAN]Roads and Planes G
    CF796C Bank Hacking
    括号类问题总结 持续更新
    CF1216E Numerical Sequence Hard Version 数学
    POJ3613 Cow Relays 矩阵快速幂
    倍增法求lca(最近公共祖先)
    Codeforces C. Jzzhu and Cities(dijkstra最短路)
    Codeforces B. Mouse Hunt(强连通分解缩点)
  • 原文地址:https://www.cnblogs.com/puresoul/p/1774856.html
Copyright © 2011-2022 走看看