博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
事务的概念和事务的控制
阅读量:7121 次
发布时间:2019-06-28

本文共 4452 字,大约阅读时间需要 14 分钟。

transaction 事务的概念

  开始:第一个dml语句

  结束:commit或者rollback

  未完成的事务可以撤销

  未完成的事务,其它会话看不到结果,只能看到已经提交的结果

  维护事务需要锁和回退段的参与

提交事务 commit

  1.手工直接提交 commit

  2.自动提交

    ddl,dcl语句

    exit 退出sqlplus

  3.提交后

    事务结束

    释放锁和回退

    其它用户可以看到结果,修改过的结果

撤销事务 rollback

  1.手工直接撤销rollback

  2.自动撤销

    网络或数据库崩溃

    强制退出sqlplus

  3.撤销后

    事务结束

    修改前的数据恢复了

    释放锁和回退

    其它用户可以看到结果,未修改的结果

事务的控制

scott@TEST>select * from t1;A1                   A2                         A3-------------------- ------------------ ----------SMITH                CLERK                     800ALLEN                SALESMAN                 1600WARD                 SALESMAN                 1250JONES                MANAGER                  2975MARTIN               SALESMAN                 1250BLAKE                MANAGER                  2850CLARK                MANAGER                  2450SCOTT                ANALYST                  3000KING                 PRESIDENT                5000TURNER               SALESMAN                 1500ADAMS                CLERK                    1100JAMES                CLERK                     950FORD                 ANALYST                  3000MILLER               CLERK                    130014 rows selected.scott@TEST>update t1 set a3=900 where a1='SMITH';1 row updated.scott@TEST>savepoint u1;Savepoint created.scott@TEST>update t1 set a3=1000 where a1='SMITH';1 row updated.scott@TEST>savepoint u2;Savepoint created.scott@TEST>update t1 set a3=1100 where a1='SMITH';1 row updated.scott@TEST>savepoint u3;Savepoint created.scott@TEST>delete t1;14 rows deleted.scott@TEST>select * from t1;no rows selectedscott@TEST>rollback to savepoint u3;Rollback complete.scott@TEST>select * from t1;A1                   A2                         A3-------------------- ------------------ ----------SMITH                CLERK                    1100ALLEN                SALESMAN                 1600WARD                 SALESMAN                 1250JONES                MANAGER                  2975MARTIN               SALESMAN                 1250BLAKE                MANAGER                  2850CLARK                MANAGER                  2450SCOTT                ANALYST                  3000KING                 PRESIDENT                5000TURNER               SALESMAN                 1500ADAMS                CLERK                    1100JAMES                CLERK                     950FORD                 ANALYST                  3000MILLER               CLERK                    130014 rows selected.scott@TEST>rollback to savepoint u2;Rollback complete.scott@TEST>select * from t1;A1                   A2                         A3-------------------- ------------------ ----------SMITH                CLERK                    1000ALLEN                SALESMAN                 1600WARD                 SALESMAN                 1250JONES                MANAGER                  2975MARTIN               SALESMAN                 1250BLAKE                MANAGER                  2850CLARK                MANAGER                  2450SCOTT                ANALYST                  3000KING                 PRESIDENT                5000TURNER               SALESMAN                 1500ADAMS                CLERK                    1100JAMES                CLERK                     950FORD                 ANALYST                  3000MILLER               CLERK                    130014 rows selected.scott@TEST>rollback to savepoint u1;Rollback complete.scott@TEST>select * from t1;A1                   A2                         A3-------------------- ------------------ ----------SMITH                CLERK                     900ALLEN                SALESMAN                 1600WARD                 SALESMAN                 1250JONES                MANAGER                  2975MARTIN               SALESMAN                 1250BLAKE                MANAGER                  2850CLARK                MANAGER                  2450SCOTT                ANALYST                  3000KING                 PRESIDENT                5000TURNER               SALESMAN                 1500ADAMS                CLERK                    1100JAMES                CLERK                     950FORD                 ANALYST                  3000MILLER               CLERK                    130014 rows selected.

 

注意:如果保存了四个回退点 比如 1 - 2 - 3 - 4,如果直接回退到节点2,那么保存的3 和 4 节点就会被删除,不能回退到3 和4 只能回退到1 节点。  

 

转载于:https://www.cnblogs.com/sangmu/p/6805954.html

你可能感兴趣的文章
python 之易经启卦
查看>>
第34讲:对List进行高效的排序和倒排序代码实战
查看>>
Python学习笔记(1_list)
查看>>
Python 登陆接口小程序V2
查看>>
linux配置vncserver服务
查看>>
vmware esxi基础篇之标准交换机
查看>>
@Autowired注解的配置
查看>>
PL/SQL 记录与集合
查看>>
django字段值显示为中文的方法
查看>>
重置MYSQL的root账号的密码
查看>>
ansible安装和常用的命令
查看>>
运维使用的mongo基本操作
查看>>
十一的时候计划去哪玩,你们想好了吗
查看>>
Java IO类库之BufferedInputStream
查看>>
DWZ:主从结构当遇到修改时删不掉遍历出来的项目处理方法
查看>>
TurboGate邮件网关邮件归档模块介绍
查看>>
JAVA笔记——异常
查看>>
mysql 递归查询
查看>>
kubernetes 构建自动伸缩控制器horizontal-pod-autoscaler
查看>>
Windows Storage Server 2008做存储服务器应用案例
查看>>