这篇文章主要介绍了php事务删除如何操作的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php事务删除如何操作文章都会有所收获,下面我们一起来看看吧。 php事务删除的操作方法:1、利用“autocommit(false)”方法,关闭数据库自动提交;2、当操作语句全部成功后,通过“commit()”提交到数据库,如果操作失败,则用“rollback()”方法回退删除即可。php 事务处理transactionMySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行事务用来管理insert,update,delete语句一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性)、Consistency(稳定性)、Isolation(隔离性)、Durability(持久性)1、事务的原子性:一组事务,要么成功;要么撤回。2、稳定性 : 有非法数据(外键约束之类),事务撤回。3、隔离性:事务独立运行。一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。事务的100%隔离,需要牺牲速度。4、持久性:一个事务一旦被提交,它对数据库中数据的改变就是永久的,接下来即使数据库发生故障也不应该对其有任何影响。执行下面的程序
$mysqli=newmysqli('localhost','root','mayi1991','mysqldemo'); if($mysqli->connect_error){ die('数据库连接错误'.$mysqli->connect_error); } $sql1="updateaccountsetbalance=balance-2whereid=1"; //这里故意写错指令中的balance1属性 $sql2="updateaccountsetbalance1=balance+2whereid=2"; $result1=$mysqli->query($sql1); $result2=$mysqli->query($sql2); if(!$result1||!$result2){ die('操作错误'.$mysqli->error); }else{ die('操作成功'); } $mysqli->close();
虽然上面的代码有报错,但是在数据库中,id=1的balance已经改变;这样就会出现问题;我们要的同时改变,如果有一个出错,就不改变;这个时候,我们就需要“事务控制”来保证“免费云主机域名一致性”;我们需要用到的方法autocommit() commit();看下面的代码
$mysqli=newmysqli('localhost','root','mayi1991','mysqldemo'); if($mysqli->connect_error){ die('数据库连接错误'.$mysqli->connect_error); } //关闭数据库自动提交 $mysqli->autocommit(false); $sql1="updateaccountsetbalance=balance-2whereid=1"; //这里故意写错属性balance1 $sql2="updateaccountsetbalance1=balance+2whereid=2"; $result1=$mysqli->query($sql1); $result2=$mysqli->query($sql2); if(!$result1||!$result2){ die('操作错误'.$mysqli->error); $mysqli->rollback();//事务回退 }else{ //操作全部正确后再提交 $mysqli->commit(); } $mysqli->close();
首先利用autocommit(false)方法,关闭数据库自动提交,然后当操作语句全部成功后,commit()提交到数据库;如果操作失败,我们用rollback()方法回退。关于“php事务删除如何操作”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“php事务删除如何操作”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。
这篇文章主要介绍了vue路由跳转实现的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue路由跳转实现的方法是什么文章都会有所收获,下面我们一起来看看吧。1.使用this.$router.push()跳转1)不带参跳转2…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。