【问题标题】:[42S22][1054] Unknown column in 'where clause'[42S22][1054]“where 子句”中的未知列
【发布时间】:2014-03-07 23:31:13
【问题描述】:

我有一个语句在 PHP 中运行良好,但是当我在 MySQL 控制台中尝试时,我得到一个错误:

sql> UPDATE users SET password = ? WHERE username = ?
(?=Test, ?=test)
[2014-03-07 17:26:31] [42S22][1054] Unknown column 'test' in 'where clause'

我尝试过引用 ? 和许多其他选项。

它应该是一个简单的WHERE,但它似乎在控制台中不起作用。

这让我觉得这是一个糟糕的 SQL 请求,但我想不出它有什么问题。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    你需要用引号括住你的字符串,所以使用

    (?='Test', ?='test')
    

    否则mysql会将它们视为实际上不存在于您的表中的列

    【讨论】:

    • 工作完美,非常感谢。我找不到这样的问题,所以我不得不要求改进 Q/A 数据库。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-22
    • 1970-01-01
    • 2020-03-01
    • 2020-06-08
    • 1970-01-01
    • 2021-03-29
    • 1970-01-01
    相关资源
    最近更新 更多