在查询语句中含有汉字,就查不出结果,怎么解决这个问题。
各位高手,快来救救我吧,谢谢了。
3 个解决方案
#1
出现这个问题的原因是:MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象,一种解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。
查询时也可使用binary属性,例如:
select * from tblname where binary word = '大'
查询时也可使用binary属性,例如:
select * from tblname where binary word = '大'
#2
你是指字段名为中文,还是字段值或查询条件为中文?
如果是字段名为中文,用`<字段名>`括起来就可以了。
如果是字段名为中文,用`<字段名>`括起来就可以了。
#3
学习
#1
出现这个问题的原因是:MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象,一种解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。
查询时也可使用binary属性,例如:
select * from tblname where binary word = '大'
查询时也可使用binary属性,例如:
select * from tblname where binary word = '大'
#2
你是指字段名为中文,还是字段值或查询条件为中文?
如果是字段名为中文,用`<字段名>`括起来就可以了。
如果是字段名为中文,用`<字段名>`括起来就可以了。
#3
学习