ylsunyuan技术论坛中心

 找回密码
 注册(请使用中文注册)
搜索
热搜: 活动 交友 discuz
查看: 763|回复: 0
打印 上一主题 下一主题

php mysql 系列函数执行事务

[复制链接]

1

主题

1

帖子

9

积分

版主

Rank: 7Rank: 7Rank: 7

积分
9
跳转到指定楼层
楼主
发表于 2015-3-23 17:36:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. $sql1 = "update User set ScoreCount = ScoreCount +10 where ID= '123456'";
  2. $sql2 = "update ScoreDetail  set FScore = 300 where ID= '123456'";
  3. $sql3 = "insert into  ScoreDetail ID,Score) values ('123456',60)";
  4. $conn = mysql_connect('localhost','root','');
  5. mysql_select_db('DB_Lib2Test');

  6. mysql_query('start transaction');
  7. //mysql_query('SET autocommit=0');

  8. mysql_query($sql1);
  9. mysql_query($sql2);

  10. if(mysql_errno ()){
  11.     mysql_query('rollback');
  12.     echo 'err';
  13. }else{
  14.     mysql_query('commit');
  15.     echo 'ok';
  16. }

  17. // mysql_query('SET autocommit=1');
  18. // mysql_query($sql3);
复制代码

Mysqli:
  1. <p>$sql1 = "update User set ScoreCount = ScoreCount +10 where ID= '123456'";
  2. $sql2 = "update ScoreDetail  set FScore = 300 where ID= '123456'";
  3. $sql3 = "insert into  ScoreDetail ID,Score) values ('123456',60)";</p><p>
  4. $mysqli = new mysqli('localhost','root','','DB_Lib2Test');</p><p>
  5. $mysqli->autocommit(false);//开始事物
  6. $mysqli->query($sql1);
  7. $mysqli->query($sql2);
  8. if(!$mysqli->errno){
  9.   $mysqli->commit();
  10.   echo 'ok';
  11. }else{
  12. echo 'err';
  13.   $mysqli->rollback();
  14. }
  15. </p><p> </p>
复制代码

回复

使用道具 举报

本版积分规则

QQ|Archiver|手机版|小黑屋|ylsunyuan技术论坛 ( 桂ICP备14005218号-1

GMT+8, 2024-5-3 20:25 , Processed in 0.053996 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表