PDO:参数号无效:混合命名和位置参数 - 注释中的问号

时间:2012-07-10 14:19:54

标签: php sql pdo

  

可能重复:
  PDO Invalid parameter number - parameters in comments

今天我遇到了一个我从未见过的错误(在PDO中),但是当你想到它时有点明显。

我收到以下错误: Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters

我使用的查询类似于以下内容:

SELECT
    x
FROM
    y
WHERE
    -- CHECKING IF X = ? --
    x = :y
AND
    1 = 2

显然我有更多的参数和更长的查询。

为什么它会给我这个错误?

1 个答案:

答案 0 :(得分:0)

解决方案显而易见:PDO无视评论,并看到了?作为位置参数。删除?在你的评论中解决了这个问题。

There's a similar bug using unbound parameters in comments.