PDO给出了奇怪的结果

时间:2012-09-18 11:08:20

标签: php mysql pdo

我从PDO得到一个奇怪的错误,它没有意义。我正在尝试以下代码,但即使我更改了代码,我也会得到完全相同的错误,但不会反映任何更改。

    $stmt = $db->prepare("SELECT database, gpsthr from ccprefs where fleetnumber=?");
    $stmt->bindValue(1, (int) $smpfleet, PDO::PARAM_INT);
    $stmt->execute();

以下是错误消息:

“SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在ccprefs的'gpsthr附近使用正确的语法fleetnumber =?'在第1行“

如果我将代码更改为此,我仍然会收到相同的错误。

    $stmt = $db->prepare("SELECT database, gpsthr from ccprefs where fleetnumber= :fleet");
    $stmt->bindValue(':fleet', (int) $smpfleet, PDO::PARAM_INT);
    $stmt->execute();

1 个答案:

答案 0 :(得分:2)

DATABASEreserved keyword,因此您必须quote

相关问题