`
isiqi
  • 浏览: 16538942 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

为什么我的 Mysql 不支持中文查询?

阅读更多

Q:

我在写一个查询条件时的问题如下:
如我想写一个字段中包含“李”字的所有记录
$str="李";
select * from table where field like '%$str%' ;
显示的记录中除了包含”李”字的记录,还有不包含“李”字的记录。为什么?

A:

在MySQL中,进行中文排序和查找的时候,对汉字的排序和查找结果是错误的。这种情况在MySQL的很多版本中都存在。如果这个问题不解决,那么MySQL将无法实际处理中文。

  出现这个问题的原因是:MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象。

方法一:

解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。

方法二:

  如果你使用源码编译MySQL,可以编译MySQL时使用--with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了。

方法三:

  可以使用 Mysql 的 locate 函数来判断。以上述问题为例,使用方法为:
SELECT * FROM table WHERE locate(field,'李') > 0;
本站使用的就是这种方法,感觉还不错。:P


方法四:

把您的Select语句改成这样,SELECT * FROM TABLE WHERE FIELDS LIKE BINARY '%FIND%'即可!

分享到:
评论

相关推荐

    Mysql中文汉字转拼音的实现(每个汉字转换全拼)

    在MySQL中实现中文汉字转拼音的功能,主要是为了方便在数据库查询和数据分析时处理中文文本,尤其是在没有全文索引或者需要进行复杂模糊匹配时。以下是一个简单的实现方法,它利用自定义函数来完成这一任务。 首先...

    让MYSQL彻底支持中文

    MySQL 是一款广泛应用的关系型数据库管理系统,但在默认情况下,它可能不直接支持中文字符集,导致处理中文数据时出现乱码或无法正常存储的问题。要让 MySQL 彻底支持中文,主要涉及到数据库服务器的配置、字符集...

    新华字典数据文件(mysql), 支持拼音,部首,汉字等查询

    新华字典数据文件(mysql), 支持拼音,部首,汉字等查询

    MySQL 5.7 中文文档

    3. **JSON支持**:MySQL 5.7开始支持JSON数据类型,这使得数据库能够存储和处理非结构化数据,为混合型应用程序提供更大的灵活性。同时,MySQL提供了用于查询和操作JSON字段的内置函数。 4. **查询优化器改进**:...

    mysql 5.7 中文文档

    MySQL 5.7中文文档是针对这个特定数据库版本的详细技术参考,包含了丰富的信息,适合开发者、管理员和学习者使用。文档的翻译质量被描述为“还行”,尽管资源可能不易找到,但提供了全面的指南。 该文档涵盖了从...

    MySQL中文参考手册.chm

    3.6.3 登录支持 3.6.4 扩展的登录支持 4 安装 MySQL 4.1 怎样获得MySQL 4.2 MySQL支持的操作系统 4.3 使用MySQL哪个版本 4.4 怎样和何时发布更新版本 4.5 安装布局 ...

    MYSQL文档完美中文版

    MySQL支持的操作系统:列举MySQL可以运行的操作系统平台。 5.2. 安装MySQL:介绍MySQL数据库的安装流程,包括获取安装包、验证完整性和安装布局。 5.3. 在不同系统中安装MySQL:提供在Windows、Linux、MacOSX、...

    MySQL支持库3.0#0版

    易语言mysql.fne支持库中文名为易语言MySQL支持库,本易语言支持库实现对MySQL数据库的支持,在使用本支持库前请学习MySQL相关知识,如果出错可以通过“取错误文本()”查看出错信息。从易语言5.0开始本库有内部调整...

    mysql8中文参考手册.pdf

    MySQL 8中文参考手册.pdf MySQL 8是关系数据库管理系统的最新版本,它提供了强大且灵活的数据存储和管理功能。本手册详细介绍了MySQL 8的安装、配置、管理和优化等方面的知识点。 安装和配置 MySQL 8提供了多种...

    Mysql 5.1 中文手册

    2. **SQL语法**:SQL是用于操作数据库的语言,手册将详细解释MySQL支持的SQL语句,如数据查询、插入、更新、删除,以及复杂的联接操作、子查询、视图等。 3. **数据库管理**:涵盖创建、修改和删除数据库及表的命令...

    MySQL官方中文文档

    3. **存储引擎**:MySQL支持多种存储引擎,如InnoDB(支持事务处理和外键)、MyISAM(快速读取但不支持事务)等,这部分会详细介绍各引擎的特点和应用场景。 4. **性能优化**:包括索引策略、查询优化、内存管理、...

    MySQL5+MySQL8中文手册(chm文件)

    MySQL集群是目前不在MySQL 8的支持。关于MySQL集群的信息,请参阅7.5、MySQL NDB Cluster NDB簇7.6 MySQL 8的特点。本手册介绍了不包含在MySQL 8的每一个版本的功能;这种功能可能不包含在MySQL 8版授权给你。如果你...

    mysql 汉字拼音数据库.zip

    总之,MySQL汉字拼音数据库是处理中文信息不可或缺的工具,它能够为各种涉及到汉字处理的项目提供强大支持,提高开发效率和用户体验。通过有效的数据库设计和使用,我们可以充分利用这些数据,创造出更加智能和人性...

    mysql 8.0中文参考手册

    MySQL 8.0中文参考手册是一本详尽的指南,为用户提供关于MySQL 8.0版本的全面信息。MySQL是一个广泛使用的开源关系型数据库管理系统(RDBMS),它以其高效、稳定和易于扩展的特性而受到全球开发者的青睐。手册以中文...

    mysql-5.7操作手册(中文版).pdf

    MySQL 5.7 操作手册中文版 MySQL 5.7 是一个功能强大且广泛使用的关系数据库管理系统。该手册提供了 MySQL 5.7 的详细使用指南,涵盖了安装、配置、管理、优化等方面的内容。 安装和升级 MySQL MySQL 5.7 提供了...

    MySQL中文参考手册

    MySQL中文参考手册是一份详尽的数据库管理系统指南,专为使用MySQL进行数据存储、管理和查询的用户和开发者设计。MySQL是一种流行的开源关系型数据库管理系统的(RDBMS),它以其高效、稳定和易于扩展的特性而受到全球...

    mysql中文使用手册

    - 本手册旨在为用户提供全面的 MySQL 使用指导,包括但不限于安装、配置、管理等方面的知识。 - **1.2.1 本手册中使用的约定** - 例如:斜体用于强调或表示变量名;`等宽字体`用于表示命令行输入等。 - **1.3 MySQL...

    mysql 不能插入中文和显示中文,不能显示中文解决办法

    在Windows平台上安装MySQL时,默认的字符集通常是`latin1`,这并不支持中文字符。因此,如果你在尝试插入或显示中文时遇到问题,首先需要检查并修改MySQL的配置文件`my.ini`。具体操作如下: - 打开`my.ini`文件,...

    mysql2005中文版

    6. **易于扩展**: MySQL支持主从复制,可以构建高可用性的数据库集群,实现数据的冗余备份和负载均衡。 7. **社区支持**: MySQL拥有庞大的开发者社区,不断提供新的功能、插件和解决方案,同时也有丰富的在线文档和...

Global site tag (gtag.js) - Google Analytics