Mysqli默认返回不区分大小写的匹配项

时间:2015-07-09 11:52:12

标签: mysql

我有一个奇怪的问题,Mysqli返回不区分大小写的匹配。在进行查询" TAUNO"时,它返回具有用户名" Tauno"的行。在查询" TaunO"它返回" Tauno"的id而" TaunO"是具有更高ID的用户。

                $query = "SELECT id FROM users WHERE username=?";
                if ($n = $this->mysqli->prepare($query)) {
                    $n -> bind_param('s',$this->recipient);
                    $n -> execute();
                    $n -> bind_result($uid);
                    $n -> fetch();
                    $n -> close();
                }

我正在使用xampp如果重要且用户表有" latin1_swedish_ci"编码

1 个答案:

答案 0 :(得分:1)

您需要将列的collat​​e更改为需要匹配的二进制文件,请检查以下链接:

MySQL DOCS

您还可以在列名称之前添加 BINARY 关键字:

SELECT id FROM users WHERE BINARY username= 'TAUNO';