charset = UTF-8
CODEPAGE = 65001
MySql version: 5.0.92-enterprise-gpl-log
ADO.Version = 2.8当我搜索unicode字符时,如下所示:
INSERT INTO table (utf8) VALUE ('♂')
SELECT utf8 FROM table WHERE utf8 = '♂' // \u2642其中utf8是VARCHAR排序规则utf8_unicode_ci
MySql返回0行。
移除CODEPAGE=65001 MySql返回1行。但是Server.HTMLEncode现在返回奇怪的符号,utf8字符现在长度大于1,没什么大不了的。
编辑:
好的,现在我很困惑:这个查询工作:
SELECT utf8 FROM table WHERE CONVERT(utf8 USING latin1) COLLATE latin1_general_ci = '♂'显然这很糟糕,它忽略了INDEX。
有什么帮助吗?
发布于 2012-03-14 20:10:02
在ASP脚本中不包含字符超出ASCII范围的字符串文本。脚本引擎解析器不执行多字节字符集。将ChrW与其他字符的Unicode值一起使用。
https://stackoverflow.com/questions/9699839
复制相似问题