mysqli事务处理demo
<?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的更多相关文章
- 【二十二】mysqli事务处理
事务处理 事务基本原理 如果不开启事务,执行一条sql,马上会持久化数据.可见:默认的mysql对sql语句的执行是自动提交的! 如果开启了事务,就是关闭了自动提交的功能,改成了commit执行自动提 ...
- 【二十二】mysqli事务处理与预处理总结
事务处理 事务基本原理 如果不开启事务,执行一条sql,马上会持久化数据.可见:默认的mysql对sql语句的执行是自动提交的! 如果开启了事务,就是关闭了自动提交的功能,改成了commit执行自动提 ...
- MySql Connector/C++8事务处理Demo
#include <iostream> #include <exception> #include <vector> #include <unistd.h&g ...
- 6个常见的 PHP 安全性攻击
了解常见的PHP应用程序安全威胁,可以确保你的PHP应用程序不受攻击.因此,本文将列出 6个常见的 PHP 安全性攻击,欢迎大家来阅读和学习. 1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单 ...
- 6个常见的php安全攻击
1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行.还有一种是通过system()或exec()命令注入的,它具有相同的SQL注入机制,但只针对sh ...
- 常见的php攻击(6种攻击详解)
1.SQL注入 SQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行.还有一种是通过system()或exec()命令注入的,它具有相同的SQL注入机制,但只针对sh ...
- php+Mysqli利用事务处理转账问题实例
本文实例讲述了php+Mysqli利用事务处理转账问题的方法.分享给大家供大家参考 <?php /**php+Mysqli利用事务处理转账问题实例 * author http://www.lai ...
- PHP基础 mysqli的事务处理
1: <?php 2: // PHP 的mysqli的事务处理 3: //======================================================== 4: ...
- mysqli预处理和事务处理
1 应用环境 mysqli预处理功能(大量数据处理时使用) 2 步骤 a)mysqli连接数据库 $mysqli = new mysqli('localhost','root','root','chu ...
随机推荐
- arcgis union 0x80040218
我利用ArcGis中的union工具将两张图层叠加时,系统总是提示失败,这是什么原因?希望高手能够解决这个问题.图片是系统提示,表示看不懂哪里出错了? 你必须使用数据管理-要素-修复几何,源数据存在不 ...
- ArcGIS 10 SP5中文版(ArcGIS10补丁5中文版)
下载地址:百度网盘下载地址:http://pan.baidu.com/s/1o7qPGhk 来自:http://zhihu.esrichina.com.cn/?/sort_type-new__day- ...
- Sharepoint学习笔记—习题系列--70-573习题解析 -(Q111-Q114)
Question 111You create a custom page layout that contains the following code segment. (Line numbers ...
- 详解Paint的setShader(Shader shader)
一.概述 setShader(Shader shader)中传入的自然是shader对象了,shader类是Android在图形变换中非常重要的一个类.Shader在三维软件中我们称之为着色器,其作用 ...
- 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: ...
- CocoaPods的使用
一.安装Cocoapods步骤:(在终端安装) 1.在安装前,需确保已经安装了Ruby环境 mac 下安装Ruby环境步骤: (1).安装RVM $ curl -L https://get.rvm.i ...
- Java 参数传递都是值传递
Java 参数传递都是值传递,验证代码如下 public class ParamTransferTest { public static void swap(int a, int b) { int t ...
- java异常 总结
异常: 是什么?是对问题的描述,将问题进行对象的封装. 异常体系: Throwable |--Error |--Exception |--RuntimeException 异常体系的特点: 异常体系中 ...
- Git+GitHub 使用小结
1.Git安装完成后需要做的配置 $ git config --global user.name "Your Name" $ git confi ...
- C#输入输出重定向
当 Process 将文本写入其标准流中时,通常将在控制台上显示该文本.通过重定向 StandardOutput 流,可以操作或取消进程的输出.例如,可以筛选文本.用不同方式将其格式化,也可以将输出同 ...