`

mysql奇怪的字符编码

阅读更多

在项目的一次测试中,偶然发现一个怪异的现象

采用mysql5.0,数据库编码采用默认的latin1

然后通过程序添加了一些数据

在页面上,查询时,输入 "软"结果查找出来一些数据 ,根本和"软"字不匹配,我就纳闷了,难道我程序写错了

也不可能啊,其他的模糊查询都是好的,没理由的

在进行跟踪调试后,没有发现任何问题,然后就直接在 mysql数据库中,执行那条简单的sql语句,

结果出来20几条数据

证明了程序没错!但是出来这20几条数据只有一条的clientname中包含了"软""字

其他的都没有,我就更加纳闷了!

通过对比这20几条数据的,发现他们的clientname 中都包含"上"字(当然这个也是测试出来的)

同样:出现了同样的20几条数据

这个时候,我就开始怀疑,两个字"软"和"上"的问题了

很快我意识到可能上编码造成的问题!

难道这两个字的latin1编码是一样的?

为了确认是否是因为编码问题,引起的原因,
本人特意在Mysql下建立了一个gbk编码的数据库,表和字段的编码也都是gbk编码
 
然后进行测试,现使用“上”字
再使用“软”字

 

可以看出问题应该是出在字符编码上了;
在gbk编码下,这两个字“上”和“软”不会出现混淆,但在latin1下确实存在问题!
总结:
        latin1编码其实就是使用iso-8859-1进行编码的,也是国际通用的编码方式,它采用单字节编码
       而gbk编码是针对中文进行编码的,它必须用两个字节才能对一个汉字进行编码,这两种编码之间的转换
在大多情况下不会有问题,但对一些汉字看来还是存在问题!
分享到:
评论

相关推荐

    Mysql字符集编码详解

    Mysql字符集编码详解 Mysql数据库中的字符集编码问题是许多开发者经常遇到的一个问题,特别是在JAVA项目中。解决这个问题需要从多方面入手,包括服务器、数据库、数据表和连接等四个层次。这篇文章将详细介绍如何...

    Unity3D教程:修改mysql字符编码成为UTF82

    本教程将介绍如何解决Unity3D中与MySQL数据库连接时的字符编码问题,确保数据能够正确地以UTF-8格式存储和读取。 首先,我们遇到的问题是即使设置表的默认字符集为UTF8,并且在发送查询时使用UTF-8编码,仍然会出现...

    mysql分割字符串

    在MySQL数据库中,有时我们需要处理存储在单一字段内的多个值,这时就涉及到字符串的分割操作。这个场景在处理如CSV格式的数据或者存储一串相关但独立的信息时尤为常见。本篇将详细介绍MySQL中的字符串分割技术及其...

    mysql批量修改字符编码

    mysql批量修改字符编码,可以把整个数据库的所有表的charset统一设置为utf-8的。

    修改MySQL默认字符集编码

    本文将要为您介绍的是修改MySQL默认字符集编码,具体操作过程:  好记心不如烂笔头,很多东西当时没记下来,过了忘了,下次用到时又得浪费好多时间才能解决。又遇到修改MySQL默认字符集编码的问题,折腾了半天解决...

    MYSQL修改字符集默认问题

    在MySQL数据库管理与维护的过程中,修改字符集是一个常见的需求,特别是在需要处理多语言或特定编码格式的情况下。本文将详细介绍如何解决“MySQL修改字符集默认问题”,包括修改步骤、注意事项以及可能遇到的问题...

    SQLyog MysqL汉化界面 可设字符编码

    总之,SQLyog作为一款全面的MysqL管理软件,它的汉化界面和字符编码设置功能对于中国用户来说尤其实用。通过它,用户可以高效、便捷地完成数据库的各种操作,无论是初学者还是专业人士都能从中受益。在日常工作中,...

    mysql 计算字符串相似度

    ### MySQL 计算字符串相似度 #### 背景与需求 在许多应用场景中,我们需要对两个字符串进行相似度比较,比如搜索引擎中的关键词匹配、文本分析中的近义词识别等。MySQL 提供了多种方法来实现字符串相似度的计算,...

    中英文字符编码查询助手.zip

    在IT领域,字符编码是一个非常基础且重要的概念,它涉及到计算机如何存储和处理文本信息。本资源"中英文字符编码查询助手"是一个实用工具,旨在帮助用户快速查询和理解字符编码,尤其对于处理多语言环境中的文本问题...

    mysql将字符串分割成多列值

    利用mysql中提供的所有函数,组成的一个存储过程。此存储过程主要是将传入的字符串分割为多个值,单个列。

    设置mysql字符集

    MySQL作为全球广泛使用的开源关系型数据库管理系统之一,其字符集的设置直接影响到数据的编码方式,进而影响到数据的正确性与国际化支持。本文将深入探讨如何设置MySQL的字符集,以及解决因字符集配置不当导致的乱码...

    mysql字符集转换

    ### MySQL字符集转换详解 #### 一、引言 在MySQL数据库管理中,字符集的正确设置至关重要。它直接影响到数据的存储与检索效果,尤其是对于包含多种语言文本的应用场景而言。本文将围绕“MySQL字符集转换”这一主题...

    MySql连接字符串

    ### MySql连接字符串详解 在开发基于MySql数据库的应用程序时,正确配置数据库连接字符串是非常重要的一步。连接字符串包含了客户端与数据库服务器建立连接所需的各种参数。本文将深入解析一个典型的MySql连接字符...

    MySql连接字符串总结

    此外,3.51版本还支持特定字符集的连接,例如`charset=UTF8`,这样可以确保数据以UTF-8编码进行传输。 接下来是使用OLE DB(Object Linking and Embedding, Database)的连接方式,OLE DB是微软提供的一种数据库...

    mysql 解析json字符串

    mysql解析Json字符串插件 安装方法 1、拷贝lib_mysqludf_json_parsing.dll到mysql目录C:\Program Files\MariaDB 5.5\lib\plugin下 2、在数据库中执行 DROP FUNCTION json_get; CREATE FUNCTION json_get RETURNS ...

    全国省市区编码mysql

    全国省市区编码mysql全国省市区编码mysql全国省市区编码mysql全国省市区编码mysql

    MySQL字符编码及乱码解决方案.txt

    MySQL字符编码及乱码解决方案 · 使用多种字符集来存储字符串 · 使用多种校对规则来比较字符串 · 在同一台服务器, 同一个数据库或甚至在同一个表中使用不同字符集或校对规则来混合字符串 · 允许定义任何级别...

    php字符编码确定

    在探讨“PHP字符编码确定”这一主题时,我们需深入理解如何在PHP与MySQL环境中确保一致且正确的字符编码设置,这对于处理多语言内容、避免乱码以及确保数据完整性和正确显示至关重要。 ### PHP与MySQL字符编码的...

    MySQL中文编码设置

    ### MySQL中文编码设置 在Java Web开发过程中,MySQL数据库中的中文编码问题是非常常见的技术难题之一。如果处理不当,可能会导致中文显示乱码、数据插入失败等问题。本文将深入探讨MySQL中文编码的相关设置,并...

    mysql字符集查看以及修改

    MySQL 字符集查看和修改 MySQL 字符集是 MySQL 数据库中最重要的配置之一,它影响着数据库的字符存储和比较方式。本文将介绍如何查看和修改 MySQL 字符集。 查看 MySQL 字符集 要查看 MySQL 字符集,可以使用 ...

Global site tag (gtag.js) - Google Analytics