[英]Case sensitive search in SQL not working
我创建数据库时未定义字符集,因此默认为拉丁文。 现在,我需要进行区分大小写的搜索,因此我使用了以下命令:
$sql = "SELECT * FROM Users WHERE username = '$value' COLLATE SQL_Latin1_General_CP1_CS_AS";
问题是它不返回任何匹配项。 在我的网页中,页面head
有<meta charset="utf-8">
,因此我想知道字符集编码是否可能是问题所在。 如果我在没有COLLATE SQL_Latin1_General_CP1_CS_AS
情况下进行搜索,则可以工作,但不区分大小写。
可能是什么问题呢? 我应该将数据库转换为始终使用utf-8吗?
尝试二进制运算符:
$sql = "SELECT * FROM Users WHERE BINARY username = '$_POST[userName]'";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.