gpt4 book ai didi

php - PDO更新不起作用,没有错误

转载 作者:行者123 更新时间:2023-11-30 00:20:06 29 4
gpt4 key购买 nike

我对自己无法执行此更新语句的事实视而不见。

$prepare = 'UPDATE plugins SET status=? WHERE name=?';
$execute = array("0", "testplugin");

$statement = $this->_dbConnectionInstance->prepare($prepare);
$statement->execute($execute);

我将错误报告设置为 PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION 并且它不会产生任何错误。但是,执行后数据库中的行不会更改。奇怪的是,直接在数据库上执行查询(PHPMyAdmin,用值替换问号)确实有效。此外,数据库连接正常(一个简单的查询'SELECT * FROM plugins'可以工作)。

The database structure

最佳答案

我使用了一个在线可用的数据库类(PDO-Quick),它有一个架构错误。实例化数据库类时,将启动一个事务 (1)。但是,类中没有任何地方被提交,并且事务始终保持“开放”状态。我现在在每个查询之前开始一个事务,在执行后提交它,并在发生任何错误时回滚 (2)。

(1)

$this->_dbConnectionInstance->beginTransaction();

(2)

try {
$this->_dbConnectionInstance->beginTransaction();
$stmt = $this->_dbConnectionInstance->prepare($prepare);

$stmt->execute($execute);
$this->_dbConnectionInstance->commit();
} catch(PDOException $e) {
$this->_dbConnectionInstance->rollBack();
exit();
}

关于php - PDO更新不起作用,没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23317974/

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