php实现mysql事务处理的方法

yipeiwu_com7年前Mysql基础

本文实例讲述了php实现mysql事务处理的方法。分享给大家供大家参考。具体分析如下:

要实现本功能的条件是环境 mysql 5.2 /php 5 支持事务的table 类型,需要InnoDB,有了这些条件你就可以做上面的实现了,这个事物回滚操作是大项目经常用到的,像银行,电子商务等都会用到,有需要的朋友可以参考一下.

近期项目软件升级到支持事务处理,做个示例供大家学习参考.

环境 mysql 5.2 /php 5

支持事务的table 类型 需要InnoDB

php mysql 事务处理实现程序代码如下:

复制代码 代码如下:
<?PHP
$LinkID =mysql_connect('localhost:3307','root',*******);
mysql_select_db('web_his',$LinkID);
mysql_query("set names utf8");
 
/* 创建事务 */
mysql_query('START TRANSACTION') or exit(mysql_error());
$ssql1="insert into pf_item values('22','我们','30')";  //执行sql 1
if(!mysql_query($ssql1)){
   echo $ssql1.mysql_errno().":".mysql_error()."<br>";
   mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
   exit;
}
$ssql1="insert into pf_item values('21','hell','10')";  //执行sql 2
if(!mysql_query($ssql1)){
  echo $ssql1.mysql_errno().":".mysql_error()."<br>";
     mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
   exit;
}
 
mysql_query('COMMIT') or exit(mysql_error());//执行事务
 
mysql_close($LinkID);
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP商品秒杀问题解决方案实例详解【mysql与redis】

本文实例讲述了PHP商品秒杀问题解决方案。分享给大家供大家参考,具体如下: 引言 假设num是存储在数据库中的字段,保存了被秒杀产品的剩余数量。 if($num > 0){...

PHP读MYSQL中文乱码的解决方法

打算切换某个网站的主机,没想到遇到Php和Mysql中文乱码的问题。   以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的M...

php生成mysql的数据字典

把mysql数据库生成数据字典,直接可用便于查看数据库表、字段,做一个数据字典是很有必要的,下面只需要简单更改下配置就可以用了,样式也是挺好的。 <?php head...

php数据入库前清理 注意php intval与mysql的int取值范围不同

php保存数据到mysql 打算在dao层进行数据入库前的清理,比如varchar进行trim,int进行intval。 有一天突然想起,php intval的取值范围与mysql的in...

PHP mysqli事务操作常用方法分析

本文实例讲述了PHP mysqli事务操作常用方法。分享给大家供大家参考,具体如下: 1、 //打开(true)或关闭(false)本次数据库连接的自动命令提交事务模式 //参数如果...