先把mysql的服务关了。 我是在win2k下修改my.ini文件,加入: default-character-set=gbk 启动mysql服务。 执行SELECT lower(name) FROM user where name='极度深寒' 返回你想要的结果。 这个问题涉及的是mysql的字符集问题。
恩,多谢几位指教。 我更不明白的是我执行 SELECT * FROM user where lower(name)='极度深寒' 竟然可以查到这一行记录? 还有,如何在不改变default-character-set的情况做到能得到正确的结果? -- 我自己的WIN2K的MYSQL就可以。字符集和服务器上的一样。
default-character-set =gb2312
# 服务器默认的字符集,加上后就支持中文字段,中文索引等
我是在win2k下修改my.ini文件,加入:
default-character-set=gbk
启动mysql服务。
执行SELECT lower(name) FROM user where name='极度深寒'
返回你想要的结果。
这个问题涉及的是mysql的字符集问题。
我更不明白的是我执行
SELECT * FROM user where lower(name)='极度深寒'
竟然可以查到这一行记录?
还有,如何在不改变default-character-set的情况做到能得到正确的结果?
--
我自己的WIN2K的MYSQL就可以。字符集和服务器上的一样。
不改变default-character-set的情况做到能得到正确的结果主要是你的应用程序所使用的字符集了,
--
我的服务器和我的字符集和应用环境完全都是一样的。不过服务器的操作系统是LINUX,我的是WIN。
==
还有因为有英文的name,所以LOWER是不能单纯的去掉的。