绑定UPDATE查询中的参数时出现PDO异常

时间:2014-11-10 16:20:45

标签: php mysql pdo bind

我使用PDO进行以下SQL UPDATE查询并绑定两个参数,但是我收到错误:

$updateSql = $con->prepare("UPDATE menu SET '".$field."' = :value WHERE 'id' = :idField");
$updateSql->execute(array(
    ':value' => $value,
    ':idField' => $id));

错误告诉我:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Syntax error next to ''dish' = ? WHERE 'id' = ?' 

注意:UPDATE正确执行,但脚本因致命错误而停止运行。

1 个答案:

答案 0 :(得分:1)

您用单引号括起了列名。删除单引号。

$updateSql = $con->prepare("UPDATE menu SET ".$field." = :value WHERE id = :idField");