gpt4 book ai didi

php - MySQL 事务 - 查询更改数据库而不提交?

转载 作者:可可西里 更新时间:2023-11-01 08:52:16 27 4
gpt4 key购买 nike

我正在尝试执行一系列不同的查询。简单地说,我需要它们都成功执行,或者我需要它们都不执行。

我现在是

mysql_query("SET autocommit=0;");
mysql_query("BEGIN;");
mysql_query("QUERY A");
if(mysql_error()){
mysql_query("rollback;");
die();
}
mysql_query("QUERY B");
if(mysql_error()){
mysql_query("rollback;");
die();
}else{
mysql_query("commit;");
}

问题是,如果我强制查询 B 失败,我在 phpmyadmin 中查看数据库时仍然可以看到查询 A 的结果。确定查询结果不应该添加到数据库中吗?

最佳答案

问题是您正在使用 MyISAM。
SHOW ENGINES 的输出很明显。

MyISAM不支持事务,也不支持外键约束。
您需要将 MySQL 版本升级到支持 InnoDB 的版本。
这将解决您的问题。

我猜您的 ISP 没有帮助您,也许客户支持可以提供帮助。

关于php - MySQL 事务 - 查询更改数据库而不提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11596950/

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