码迷,mamicode.com
首页 > 数据库 > 详细

Oracle与Mysql数据的事务处理机制

时间:2015-08-26 12:11:43      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:oracle   mysql   事务   回滚   rollback   

相比oracle的事务处理,Mydql相对还是简单一点的,但是事务作为一项重要的安全机制在数据库里面是必不可少的,特别是里面的事务回滚机制非常的有用,不多说了,先说一下mysql的事务处理:

Mysql简单的回滚:

第一步:开始事务:start transaction;

第二步:执行dml等其他的变化操作。

第三步:混滚到开始事务之前状态: rollback;


这样的话在执行完毕之后就发现之前的一些操作没有执行成功。只有commit提交之后才会真正的把数据提交。但是,还要考虑下面的两种情况,一种是服务关闭的情况,这样我们的数据回滚在没有提交的情况下是有真正的去执行,还有就是回滚是能够用一次,再次使用虽然不报错,但是不起任何作用。

如果你会说了,我想在一次事务中国实现多次回滚怎么办,这里你可以使用设置保存点:

在上面的第二步中,你可以这样一下: savepoint 保存点1(名称而已);

然后你继续执行dml,到了耨一个地方继续savepoint 保存点2;

你是不是想通过rollback to 保存点的方式会滚到之前的状态。但是,不得不告诉你,旺旺想想的和显示的情况并不是一模一样,你会发现只能够滚滚到第一个保存 点,其他的保存点会提示不存在!

Oracle的事务处理:

Oracle是不用说明开启事务的,针对dml语句,当你设置保存点,接下来的步骤如上返回到保准点同样的用commit提交事务。


但是,我这里就总结出了一个重要的原则:事务回滚只能反方向一直逆行,这个过程已然不可逆。除非提交结束事务。




版权声明:本文为博主原创文章,未经博主允许不得转载。

Oracle与Mysql数据的事务处理机制

标签:oracle   mysql   事务   回滚   rollback   

原文地址:http://blog.csdn.net/mycodedream/article/details/47998175

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!