gpt4 book ai didi

php - mysql 撤消查询或函数

转载 作者:行者123 更新时间:2023-11-29 04:02:28 25 4
gpt4 key购买 nike

基本上,我是使用 MYISAM 排序规则和 php 插入到一个关系型 MySQL 数据库中。

假设用户填写了一个网络表单并将其发布以供插入,他们提供的所有数据可能属于多个表的一部分。

所以使用 php,我会将值插入到一个表中,然后插入到另一个表中,然后插入到另一个表中,等等...

但是假设我向 3 个表中插入了 3 批数据,但是在第 4 次插入时...sql 失败...然后我需要向用户返回一条错误消息,但同时我还必须撤消所有最后的操作插入。

我可以简单地在失败时删除所有过去的插入...

但是我想知道是否有更简单的方法??

以某种方式向临时存储数据和 SQL 的 mysql 引擎提供 sql 查询,并根据命令运行所有语句?

有什么想法吗?

最佳答案

开始于:

mysql_query("start transaction");

然后,如果您的所有插入操作都成功:

mysql_query("commit");

否则,如果某处出现故障...

mysql_query("rollback");

完成 ^_^ 我喜欢这个功能。

编辑(评论中的以下几点):这仅适用于支持事务的数据库引擎,而 MyISAM 不是其中之一。我强烈推荐 InnoDB,因为它支持行级锁定,使您的查询不太可能遇到锁定。

关于php - mysql 撤消查询或函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9801842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com