解析php mysql 事务处理回滚操作(附实例)


Posted in PHP onAugust 05, 2013

很多新手在进行项目过程中,会碰到这样一种情况,如:论坛扣币项目中,用户支付论坛币的时候如果突然断网、电脑死机、停电、等其它自然灾害时,导致本次交易没有成功(即用户的币已经扣掉了,但是服务器数据库中没有消费记录等其它情况),这种情况应该怎么样进行处理呢?

在这个时候,我们可以用Mysql事务回滚来进行处理,那代码怎么写呢?
那下面我就来说一说这个mysql事务回滚应该怎么处理。

首先MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其他的类型是不支持的!

那如果,我们的数据表已经存在,并且不是上面所说的两种类型的话,应该怎么办呢?

1、我可以去找一个叫MySQL-Front的软件,里面能更改表类型。
2、我们也可以通过SQL语句来更改,sql语句可以这样写:

 ALTER  TABLE  TABLENAME  type  =  InnoDB;

将需要修类型的表全更改完成后,我们可以到PHP文件中用代码进行测试了。
mysql_query("BEGIN"); //或者mysql_query("START TRANSACTION"); 
$sql = "INSERT INTO ..."; 
$sql2 = "INSERT INTO ..."; 
$res = mysql_query($sql); 
$res1 = mysql_query($sql2);  
if($res && $res1){  
 mysql_query("COMMIT");  
 echo '提交成功。'; 
}else{  
 mysql_query("ROLLBACK");  
 echo '数据回滚。'; 
} 
mysql_query("END");

看到这里,应该知道怎么用PHP来处理mysql的事务回滚了吧。很简单吧!
PHP 相关文章推荐
php 文件状态缓存带来的问题
Dec 14 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
Dec 05 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
Jun 28 PHP
php页面缓存方法小结
Jan 10 PHP
PHP实现动态web服务器方法
Jul 29 PHP
讲解WordPress开发中一些常用的debug技巧
Dec 18 PHP
Thinkphp单字母函数使用指南
May 08 PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 PHP
Laravel实现定时任务的示例代码
Aug 10 PHP
php+redis实现消息队列功能示例
Sep 19 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
Oct 11 PHP
PHP设计模式之组合模式定义与应用示例
Feb 01 PHP
php多层数组与对象的转换实例代码
Aug 05 #PHP
注意:php5.4删除了session_unregister函数
Aug 05 #PHP
PHP中fwrite与file_put_contents性能测试代码
Aug 02 #PHP
PHP-Fcgi下PHP的执行时间设置方法
Aug 02 #PHP
基于php中使用excel的简单介绍
Aug 02 #PHP
PHP自动识别字符集并完成转码详解
Aug 02 #PHP
PHP实现根据浏览器跳转不同语言页面代码
Aug 02 #PHP
You might like
PHP也可以?成Shell Script
2006/10/09 PHP
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
2012/05/06 PHP
php中curl使用指南
2015/02/05 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
2019/12/13 PHP
Javascript页面添加到收藏夹的简单方法
2013/08/07 Javascript
JS+flash实现chrome和ie浏览器下同时可以复制粘贴
2013/09/22 Javascript
JavaScript实现常用二级省市级联下拉列表的方法
2015/03/25 Javascript
javascript无刷新评论实现方法
2015/05/13 Javascript
Vue.js开发环境搭建
2016/11/10 Javascript
jQuery+ajax的资源回收处理机制分析
2017/01/07 Javascript
nodejs进阶(6)—连接MySQL数据库示例
2017/01/07 NodeJs
微信小程序 图片宽度自适应的实现
2017/04/06 Javascript
使用axios实现上传图片进度条功能
2017/12/21 Javascript
js中url对象化管理分析
2017/12/29 Javascript
React中的render何时执行过程
2018/04/13 Javascript
小程序实现页面顶部选项卡效果
2018/11/06 Javascript
通过循环优化 JavaScript 程序
2019/06/24 Javascript
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
Python标准库urllib2的一些使用细节总结
2015/03/16 Python
基于使用paramiko执行远程linux主机命令(详解)
2017/10/16 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
Python中的异常处理try/except/finally/raise用法分析
2019/02/28 Python
python中property和setter装饰器用法
2019/12/19 Python
详解python对象之间的交互
2020/09/29 Python
Django中和时区相关的安全问题详解
2020/10/12 Python
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
法国在线购买汽车轮胎网站:123pneus.fr
2019/02/25 全球购物
Fossil加拿大官网:化石手表、手袋、首饰及配饰
2019/04/23 全球购物
团支书的期末学习总结自我评价
2013/11/01 职场文书
实习推荐信
2014/05/10 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
企业授权委托书范本
2014/09/22 职场文书
质量保证书怎么写
2015/02/27 职场文书
具结保证书范本
2015/05/11 职场文书
动视暴雪取消疫苗禁令 让所有员工返回线下工作
2022/04/03 其他游戏
Java中的继承、多态以及封装
2022/04/11 Java/Android