我在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中并运行它,则它可以工作并且修改该行,
从我的网站执行UPDATE而不是与登录PHPmyadmin时有所不同的权利有关吗?
编辑:
FIXED : thanks for you help : PDO::commit(); was needed to close my PDO::beginTransaction();
最佳答案
当您开始使用$pdos->beginTransaction();
进行交易时,我很确定您需要使用$pdos->commit();
进行提交
有关更多信息,请参见documentation。