You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP操作MariaDB更新数据库Token时出现SQL语法错误如何解决?

问题排查与解决

错误原因

  • SQL语法错误,SET子句内的Token = :Token后多写了多余的逗号。逗号仅用于分隔多个待更新的字段,只有单个更新字段时不需要添加,且不能放在WHERE关键字之前,这是触发语法报错的直接原因。
  • 你已经对属于SQL保留字的Index字段用反引号包裹,这部分写法没有问题。

正确实现代码

<?php
// 移除了:Token后面的多余逗号,修正SQL语法
$sql = "UPDATE ComptePro 
    SET `Token` = :Token
    WHERE `Index` = :Index";

echo $Indexuser;
echo " ";
echo $token;
$req = $bdd->prepare($sql);
$req->bindParam(':Token', $token, PDO::PARAM_STR);
$req->bindParam(':Index', $Indexuser, PDO::PARAM_INT); 
$req->execute();

可选调试优化

如果后续需要更清晰的错误提示,可以开启PDO异常模式捕获报错:

// 在初始化数据库连接后添加即可
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

try {
    $req->execute();
} catch(PDOException $e) {
    echo "执行错误:" . $e->getMessage();
}

内容的提问来源于stack exchange,提问作者THE_DOCTOR01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 16:15:05