大仙指点-mysqli中执行多条语句同时事物处理

问题描述

mysqli中执行多条语句同时事物处理
<?php
$mysqli=new mysqli(""localhost""root""root""bookstore"");
if($mysqli->connect_error){
echo ""link bookstore database fail:"".$mysqli->connect_error;
}
// $mysqli->autocommit(0);
$sqls=""create table zh(id int auto_increment primary keyname varchar(60) not null default ''ye double not null default'0.00')type=InnoDB;"";
$sqls=""insert into zh(idnameye)values('1''zhangsan''2000');"";
$sqls.=""insert into zh (nameye) values('lisi'3000);"";
if($result=$mysqli->multi_query($sqls)){
echo ""zh database operation success"".""
"";
echo $mysqli->affected_rows.""
"";
}else{
echo ""database link fail:"".$mysqli->errno.""fail error:"".$mysqli->error.""
"";
}
// $mysqli=new mysqli(""localhost""root""root""bookstore"");
$mysqli->autocommit(0);
$error=true;
$price=50;
$sql=""update zh set ye=ye-{$price} where name='zhangsan'"";
$results=$mysqli->query($sql);
if(!$results){
$error=false;
echo""zhangsan transfer failed"".""
"";
}else{
echo $mysqli->affected_rows.""
"";
if($mysqli->affected_rows==0){
$error=false;
echo ""zhangsan money not have change"".""
"";
}else{
echo ""zhangsan money transfer out success"".""
"";
}
}
$sql=""update zh set ye=ye+{$price} where name='lisi'"";
$results=$mysqli->query($sql);
if(!$results){
$error=false;
echo ""transfer money failed for lisi"".""
"";
}else{
echo $mysqli->affected_rows.""
"";
if($mysqli->affected_rows==0){
$error=false;
echo ""lisi money has not change"".""
"";
}else{
echo ""lisi money transfer into success"".""
"";
}
}
if($error){
echo ""transfer success"".""
"";
$mysqli->commit();
}else{
echo ""transfer failed"".""
"";
$mysqli->rollback();
}
$mysqli->autocommit(1);
$mysqli->close();

时间: 2024-08-24 10:02:06

大仙指点-mysqli中执行多条语句同时事物处理的相关文章

update-求大神指点db2 中存储过程动态赋值列名的问题

问题描述 求大神指点db2 中存储过程动态赋值列名的问题 我想在存储过程里,执行一个update,其中set后的列名和值都是变量,需要通过while--do --去判断.可是写完之后保存不报错,运行,就各种报错,换成select * from test where col1=? 在传一个变量久不报错,求教.我该怎么写啊.网上差了好多都是select的,就没有update 对列名赋值的.请大神们告诉一声呗.我纯粹是个小白.就是看资料里写的.请大神指点. 我写了一个test 大概如下: 解决方案 自

求大神指点 jquery中图中所嵌套的两个this为什么第二个不能用?

问题描述 求大神指点 jquery中图中所嵌套的两个this为什么第二个不能用? jquery中图中所嵌套的两个this为什么第二个不能用? 解决方案 this和执行函数的上下文有关系,直接$('..>li').mouseover绑定事件就好了,干嘛用each循环添加事件,没有必要 解决方案二: 作用域不同 最好声明个变量 指定作用域

菜鸟一枚 求大神指点-php中模板页面a标签在ie中能用在其他浏览器中就不能用了,求大神指点。

问题描述 php中模板页面a标签在ie中能用在其他浏览器中就不能用了,求大神指点. <body> <div> <table border="1"> <tr> <td colspan="3"><h3><center>信息显示</center></h3></td> <td colspan="2"><a href=&

特别着急 请大神指点-js中的按钮点击问题,如何实现一个按钮失效,用disable=true不能实现

问题描述 js中的按钮点击问题,如何实现一个按钮失效,用disable=true不能实现 想要一个按钮一天只能被点击一次,不管页面刷不刷新,重不重新加载都之能被点击一次.我需要源代码,不需要思想.谢谢各位前辈指点. 解决方案 $(""#button"").attr(""disabled""true""); 解决方案二: 少个d function testClick(){ var btn = document

跪求路过的大仙指点下我!!!!!!!!!

问题描述 我做了个web项目的管理系统想用Application统计在线人数在登陆时候语句Application.Lock();Application["totol"]=(int)Application["totol"]+1;Application["online"]=(int)Application["online"]+1;Application.UnLock();退出系统时候语句Application.Lock();App

如何GridView前面加选中项目,来个大仙指点下。谢谢

问题描述 GridView前面加选中项目?就是选择全部/对所选择项目操作如果选对所选择项目操作如何传值?多谢那个朋友指点下.拿代码举例下..谢谢 解决方案 解决方案二:用模版列,然后用checkbox控件,在服务端进行判断解决方案三:兄弟+checkbox我知道.可是用模板列咋回事?Columns里面+吗.咋+??谢谢

java中输出一个日期排序,输出格式怎么变成Date@2c905b34类似的了。。请大神指点

问题描述 java中输出一个日期排序,输出格式怎么变成Date@2c905b34类似的了..请大神指点 java中输出一个日期排序,输出格式怎么变成Date@2c905b34. Date@3953c9c7类似的格式了..请大神指点 : Date[] days = new Date[5]; days[0] = new Date(2012123); days[1] = new Date(201515); days[2] = new Date(2008123); days[3] = new Date(

插件-各位大仙,将多个单独EXE打包成一个安装程序怎么解决

问题描述 各位大仙,将多个单独EXE打包成一个安装程序怎么解决 各位大仙: 最近在使用个程序过程中,遇到需要安装多个插件,安装太过于繁琐,求教各位大侠指点.谢谢 运行一个程序,需要安装.NET.Silverlight还有自己用C#写的两个EXE程序,在使用过程大家反映安装太过复杂了,想求教大仙指点用什么打包工具,怎么可以将多个EXE打包成一个安装文件,并能顺序自动安装.谢谢.各位大仙: 解决方案 就是打包,部署呗,常用的是vs,不过我发现inno也很不错. 解决方案二: 我看下了下INNO他只能

数组分割,才做的.net不了解.net方法,求大神指点

问题描述 数组分割,才做的.net不了解.net方法,求大神指点 .net中6655-12311-6332如何去掉数组中的横线? 32326622怎么固定取前5位数? 求各位大神帮忙!