start TRANSACTION;  //事务处理开始
UPDATE a set money =money-2 where id=1;
UPDATE a set money=money+2 where id=2;
COMMIT;//事务处理结束

start TRANSACTION;//事务处理开始
UPDATE a set money =money-2 where id=1;
UPDATE a set money=money+2 where id=2;
ROLLBACK;//事务处理回滚

alter table a change money money int UNSIGNED;//改变表MONEY为无负号

------------

实例1

<?php
$conn=mysql_connect('localhost','root','yourpassword')or die(mysql_error());
mysql_select_db('transaction',$conn);
mysql_query('set names utf8');

//创建事务
mysql_query('START TRANSACTION') or die(mysql_error());
$sqlA="update A set account=account-1";
if(!mysql_query($sqlA)){
&nbsp;&nbsp;&nbsp; mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
&nbsp;   exit();
}
$sqlB="update B set account=account+1";
if(!mysql_query($sqlB)){
&nbsp;&nbsp;&nbsp; mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
&nbsp;   exit();
}
mysql_query('COMMIT')or die(mysql_error());//执行事务
mysql_close($conn);
?>

实例2

-----------------------

php代码实现事务的处理可以通过PHP预定义类mysqli的以下方法实现。
autocommit(boolean):该方法用于限定查询结果是否自动提交,如果该方法的参数为true则自动提交,如果参数为false则关闭自动提交。MySQL数据库默认为自动提交。
rollback():利用mysqli类中的该方法可以实现事务的回滚。
commit():利用该方法可以实现提交所有查询。

 代码如下 复制代码

<?php
include_once("conn.php");

$id=$_GET[id];
$conn->autocommit(false);
if(!$conn->query("delete from tb_sco where id='".$id."'"))
{
  $conn->rollback();
}
if(!$conn->query("delete from tb_stu where id='".$id."'"))
{
  $conn->rollback();
}
  $conn->commit();
  $conn->autocommit(true);
  echo "ok"
?>

转载于:https://www.cnblogs.com/bk7788/p/6512720.html

mysql 事务处理相关推荐

  1. mysql事务处理用法与实例详解

    MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID事务.行级锁.并发 3.Berkeley DB: ...

  2. mysql事务处理 begin_mysql 事务处理

    mysql 事务处理(表的引擎必须是 innodb / BDB) 主要是两种两法:推荐用第一种 1.用 begin,rollback,commit 来实现 begin 开始一个事务 rollback ...

  3. MySQL事务处理与事务隔离(锁机制)

    转载:http://blog.csdn.net/qq_26525215/article/details/52146529 MySQL 事务处理 简单介绍事务处理: MySQL 事务主要用于处理操作量大 ...

  4. mysql pdo 事务处理_php中pdo的mysql事务处理实例

    php+mysql事务处理的几个步骤: 1.关闭自动提交 2.开启事务处理 3.有异常就自动抛出异常提示再回滚 4.开启自动提交 注意: mysql只有这个InnoDB驱动是支持事务处理的,默认MyI ...

  5. mysql事务处理 java_Java实现的mysql事务处理操作示例

    本文实例讲述了Java实现的mysql事务处理操作.分享给大家供大家参考,具体如下: 1.事务是一组要么同时执行成功,要么同时执行失败的sql语句.是数据库操作的一个执行单元. 2.事物的四大特点: ...

  6. PHP mysql 事务处理实例

    事务是必须满足4个条件(ACID):原子性(Autmic).一致性(Consistency).隔离性(Isolation).持久性(Durability) 原子性(Autmic):事务在执行性,要做到 ...

  7. php mysql事务处理回滚操作

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

  8. Node Mysql事务处理封装

    node回调函数的方式使得数据库事务貌似并没有像java.php那样编写简单,网上找了一些事务处理的封装并没有达到自己预期的那样简单编写,还是自己封装一个吧. 封装的大体思路很简单:函数接受一个事务处 ...

  9. Mysql事务处理问题

    今天和同学讨论起数据库事务处理的问题,感觉讨论中明白了一些,有些知识看过了,但是没有实际使用还是不理解. 事务处理就是将一系列操作当做一个原子操作,要么全部执行成功,如果执行失败则保留执行期的状态.通 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 3-1课后习题2
  2. CTFshow 命令执行 web65
  3. 2019年寒假作业1编辑总结
  4. BigData:根据最新2018人工智能行业创新企业Top100名单,绘制AI地区热点图,一目了然,看清哪个是AI最热门城市,以及VC最AI的热门领域
  5. 结合webpack配置_前端 Webpack 工程化的最佳实践
  6. Severstal: Steel Defect Detection比赛的discussion调研
  7. 那些你可能还不知道的新发明
  8. linux下解析域名
  9. 第一篇:Spring Boot 快速入门篇
  10. redis sds的申请扩容源码
  11. Java一年,面试总结
  12. 8中间件,csrf跨站请求伪造,auth模块
  13. Linux Kernel 2.4 Internals
  14. ad用户和计算机显示2000个,AD 用户属性userAccountControl的详细解释
  15. java伪代码 读后感
  16. 做支付行业这些支付方式你需要知道!
  17. MySQL基础知识,入门必备
  18. 通过注册表永久禁用系统UAC功能
  19. QNX分布式实时操作系统初步认识-QNX系统了解认识
  20. ndows优化大师 免费版,Windows优化大师

热门文章

  1. ASP.NET 实践:写入 Cookie
  2. 图像处理与计算机视觉资源汇总——论文+代码+教材+视频等等
  3. Caffe中的损失函数解析
  4. 在Python中使用LDA处理文本
  5. deeplearning URL
  6. 量产车发布前夕,乐视在美汽车工厂被传欠薪停工
  7. BWA SAM文件格式
  8. VRRP与VLAN实验(HuaWei)
  9. AspNetPager 样式以及使用(漂亮)
  10. 以太网单播、组播、广播