我花了很多时间试图解决这个问题。
SELECT *
FROM `users`
WHERE `IP` = `123.231.213.132`
这有什么问题?
#1054 - Unknown column '123.231.213.132' in 'where clause'
答案 0 :(得分:19)
您不应该对列值使用反引号。你必须使用单引号或双引号,否则mysql会将该值视为列名。
SELECT *
FROM `users`
WHERE `IP` = '123.231.213.132'
答案 1 :(得分:7)
使用单引号而不是`123.231.213.132``
SELECT *
FROM `users`
WHERE `IP` = '123.231.213.132'
的反引号字符
答案 2 :(得分:3)
对字符串文字使用引号'而不是反引号'
答案 3 :(得分:2)
反引号有什么用?使用单引号 此外,我假设用户是一个表名,IP是用户的实体。
另外......你必须用分号结束你的陈述
答案 4 :(得分:1)
它可能是单个语音标记符号。尝试手动更换它们。
答案 5 :(得分:1)
您使用的引号错误
在mysql语句中指定字符串值你必须使用'(单引号)或“(双引号)
`(反引号)字符用于显式指定引用的字符串表示mysql应从中获取数据的字段名称
如果列名与mysql的保留关键字(如index
,where
等)冲突,则语句中需要反引号