【发布时间】:2012-10-19 11:51:39
【问题描述】:
正在编写一个 PHP 脚本,用于检查数据库中的某些值。到目前为止,我认为它工作正常,但我发现了一个问题。
查询不是在寻找特定的字符。
所以如果我使用这个查询:
SELECT *
FROM `facilitydb_login`
WHERE
facilitydb_login.`password` = 'PASS'
我想要结果,因为密码是PASS。但是如果您填写 pass(小写),则返回相同的条目。
如何让它区分大小写?
【问题讨论】:
-
列的
collation是否区分大小写?您使用的是什么数据库服务器?如果是 MySql(正如您提到的 PHP,所以这是一个相当常见的组合),您可以使用 COLLATE - dev.mysql.com/doc/refman/5.0/en/charset-collate.html -
是的,我正在使用 MySQL。 @dash,我不知道,我怎么能看到?
-
@TWCrap Execute
SHOW FULL COLUMNS FROM db.table其中db和table被替换为您的数据库和表名 -
您也可以使用
binary关键字。见stackoverflow.com/questions/7857669/mysql-case-sensitive-query
标签: mysql sql case-sensitive exact-match