<?php  $mysqli=new mysqli("localhost", "root", "123456", "xsphpdb");

//关闭自动提交 $mysqli->autocommit(0);

$error=true;

$price=50;

$sql="update zh set ye=ye-{$price} where name='zhangsan'";    $result=$mysqli->query($sql);

if(!$result){   $error=false;   echo "从张三转出失败<br>";  }else{   if($mysqli->affected_rows==0){    $error=false;    echo "张三的钱没有变化";    }else{    echo "从张三账号中转出成功!<br>";   }  }

$sql="update zh set ye=ye+{$price} where name='lisi1'";

$result=$mysqli->query($sql);

if(!$result){   $error=false;   echo "从李四转入失败<br>";  }else{   if($mysqli->affected_rows==0){    $error=false;    echo "李四的钱没有变化";    }else{    echo "向李四账号中转入成功!<br>";   }  }

if($error){   echo "转账成功!";   $mysqli->commit();  }else{   echo "转账失败!";   $mysqli->rollback();  }

$mysqli->autocommit(1);//完成后开启自动提交  $mysqli->close();

注意:操作的数据表的存储引擎(表类型)必须是InnoDB或者是BDB(不常用),因为只有这两类型的表才支持事务处理。修改数据表类型alter table demo type=InnoDB;

mysqli事务处理demo的更多相关文章

  1. 【二十二】mysqli事务处理

    事务处理 事务基本原理 如果不开启事务,执行一条sql,马上会持久化数据.可见:默认的mysql对sql语句的执行是自动提交的! 如果开启了事务,就是关闭了自动提交的功能,改成了commit执行自动提 ...

  2. 【二十二】mysqli事务处理与预处理总结

    事务处理 事务基本原理 如果不开启事务,执行一条sql,马上会持久化数据.可见:默认的mysql对sql语句的执行是自动提交的! 如果开启了事务,就是关闭了自动提交的功能,改成了commit执行自动提 ...

  3. MySql Connector/C++8事务处理Demo

    #include <iostream> #include <exception> #include <vector> #include <unistd.h&g ...

  4. 6个常见的 PHP 安全性攻击

    了解常见的PHP应用程序安全威胁,可以确保你的PHP应用程序不受攻击.因此,本文将列出 6个常见的 PHP 安全性攻击,欢迎大家来阅读和学习. 1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单 ...

  5. 6个常见的php安全攻击

    1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行.还有一种是通过system()或exec()命令注入的,它具有相同的SQL注入机制,但只针对sh ...

  6. 常见的php攻击(6种攻击详解)

    1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行.还有一种是通过system()或exec()命令注入的,它具有相同的SQL注入机制,但只针对sh ...

  7. php+Mysqli利用事务处理转账问题实例

    本文实例讲述了php+Mysqli利用事务处理转账问题的方法.分享给大家供大家参考 <?php /**php+Mysqli利用事务处理转账问题实例 * author http://www.lai ...

  8. PHP基础 mysqli的事务处理

    1: <?php 2: // PHP 的mysqli的事务处理 3: //======================================================== 4: ...

  9. mysqli预处理和事务处理

    1 应用环境 mysqli预处理功能(大量数据处理时使用) 2 步骤 a)mysqli连接数据库 $mysqli = new mysqli('localhost','root','root','chu ...

随机推荐

  1. arcgis union 0x80040218

    我利用ArcGis中的union工具将两张图层叠加时,系统总是提示失败,这是什么原因?希望高手能够解决这个问题.图片是系统提示,表示看不懂哪里出错了? 你必须使用数据管理-要素-修复几何,源数据存在不 ...

  2. ArcGIS 10 SP5中文版(ArcGIS10补丁5中文版)

    下载地址:百度网盘下载地址:http://pan.baidu.com/s/1o7qPGhk 来自:http://zhihu.esrichina.com.cn/?/sort_type-new__day- ...

  3. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q111-Q114)

    Question 111You create a custom page layout that contains the following code segment. (Line numbers ...

  4. 详解Paint的setShader(Shader shader)

    一.概述 setShader(Shader shader)中传入的自然是shader对象了,shader类是Android在图形变换中非常重要的一个类.Shader在三维软件中我们称之为着色器,其作用 ...

  5. Class org.apache.struts2.json.JSONWriter can not access a member of class org.springframework.aop.TruePointcut with modifiers "public"

    Spring注入Action使用Json错误:org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException: ...

  6. CocoaPods的使用

    一.安装Cocoapods步骤:(在终端安装) 1.在安装前,需确保已经安装了Ruby环境 mac 下安装Ruby环境步骤: (1).安装RVM $ curl -L https://get.rvm.i ...

  7. Java 参数传递都是值传递

    Java 参数传递都是值传递,验证代码如下 public class ParamTransferTest { public static void swap(int a, int b) { int t ...

  8. java异常 总结

    异常: 是什么?是对问题的描述,将问题进行对象的封装. 异常体系: Throwable |--Error |--Exception |--RuntimeException 异常体系的特点: 异常体系中 ...

  9. Git+GitHub 使用小结

    1.Git安装完成后需要做的配置            $ git config --global user.name "Your Name"        $ git confi ...

  10. C#输入输出重定向

    当 Process 将文本写入其标准流中时,通常将在控制台上显示该文本.通过重定向 StandardOutput 流,可以操作或取消进程的输出.例如,可以筛选文本.用不同方式将其格式化,也可以将输出同 ...