php - sql更新不改变数据库中的数据

标签 php mysql pdo

我在 PHP 中使用 PDO 做了一个简单的更新查询:

$pdos = connect_db(); 
$pdos->beginTransaction();
try {
    $query = "UPDATE `myo`.`question` SET `intitule` = 'Question azeerrr' WHERE `question`.`id` = 1"; 
    $pdo = $pdos->prepare($query);
    $pdo->execute();
    return $pdo->rowCount();
catch (Exception $e) { print_r ($e); exit (); }

这似乎不起作用(数据库中的数据未更改),尽管我没有收到任何错误消息,甚至从 rowCount() 收到“1”,这意味着更新成功。

此外,如果我将此查询复制并粘贴到 PHPmyadmin 中并运行它,它会起作用并且该行已被修改,

这可能是关于从我的网站执行更新而不是与您登录 PHPmyadmin 时相同的权利吗?

编辑: 已修复:感谢您的帮助:PDO::commit();需要关闭我的 PDO::beginTransaction();

最佳答案

当您使用 $pdos->beginTransaction(); 开始事务时,我很确定您需要使用 $pdos->commit(); 提交它

参见 documentation获取更多信息。

关于php - sql更新不改变数据库中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28987702/

相关文章:

php - 如何为 PHP 5.4 修改此函数?

PHP 通过 PDO 从 Linux 连接到 MS SQLServer 2008

php - 如何将带有mysql的php应用程序部署到heroku?

php - 调整图像大小在不同图像上有所不同?

php - 根据初始上下文选择节点

php - 如何扩展另一个目录中的类?

mysql - SQL 语法错误 - 第 19 行

mysql - 对金额范围进行计数和求和

mysql - Amazon Athena 将字符串转换为日期

php - 无法使用 PDO 将数据插入数据库