【问题标题】:PDO: Invalid parameter number: mixed named and positional parameters - question mark in comments [duplicate]PDO:无效参数编号:混合命名参数和位置参数 - 注释中的问号 [重复]
【发布时间】:2012-07-10 14:19:54
【问题描述】:

可能重复:
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

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

为什么会出现这个错误?

【问题讨论】:

  • 我故意将两个问题和答案分开。潜在的错误(或功能,无论如何)是相同的,但它导致的错误是不同的。我认为这对搜索结果更好。

标签: php sql pdo


【解决方案1】:

解决方案很明显:PDO 不理会 cmets 并看到 ?作为位置参数。删除 ?在您的评论中解决了这个问题。

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

【讨论】:

    猜你喜欢
    • 2014-03-05
    • 1970-01-01
    • 1970-01-01
    • 2018-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-09
    相关资源
    最近更新 更多