文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

php事务删除如何操作

2023-07-04 15:09

关注

这篇文章主要介绍了php事务删除如何操作的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php事务删除如何操作文章都会有所收获,下面我们一起来看看吧。

php事务删除的操作方法:1、利用“autocommit(false)”方法,关闭数据库自动提交;2、当操作语句全部成功后,通过“commit()”提交到数据库,如果操作失败,则用“rollback()”方法回退删除即可。

php 事务处理transaction

MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!

在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务

事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行

事务用来管理insert,update,delete语句

一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性)、Consistency(稳定性)、Isolation(隔离性)、Durability(持久性)

事务的原子性:一组事务,要么成功;要么撤回。

稳定性 : 有非法数据(外键约束之类),事务撤回。

隔离性:事务独立运行。一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。事务的100%隔离,需要牺牲速度。

持久性:一个事务一旦被提交,它对数据库中数据的改变就是永久的,接下来即使数据库发生故障也不应该对其有任何影响。

执行下面的程序

$mysqli = new mysqli('localhost','root','mayi1991','mysqldemo');if($mysqli->connect_error){    die('数据库连接错误'.$mysqli->connect_error);}$sql1 = "update account set balance = balance - 2 where id = 1";//这里故意写错指令中的balance1属性$sql2 = "update account set balance1 = balance + 2 where id = 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 = new mysqli('localhost','root','mayi1991','mysqldemo');if($mysqli->connect_error){    die('数据库连接错误'.$mysqli->connect_error);}//关闭数据库自动提交$mysqli->autocommit(false);$sql1 = "update account set balance = balance - 2 where id = 1";//这里故意写错属性balance1$sql2 = "update account set balance1 = balance + 2 where id = 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事务删除如何操作”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯