`
applepaihs
  • 浏览: 18683 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

mysql 乱码解决办法---创建数据库时指定字符集

阅读更多
【转自:http://tdcq.iteye.com/blog/363955,非常感谢原作者】
这篇文章是网上各种解决mysql中文乱码问题的集大成者,一般可以解决问题。

mysql 创建 数据库时指定编码很重要,很多开发者都使用了默认编码,但是我使用的经验来看,制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。

我们遵循的标准是,数据库,表,字段和页面或文本的编码要统一起来
很多mysql数据库工具(除了phpmyadmin,我偶尔用,功能强速度慢)都不支持创建时指定数据库编码,当然可以改my.ini来解决这个问题,但是需要重新启动mysql,不过用下面的语句会更有效

GBK: create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

UTF8: CREATE DATABASE `test2` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

注意:如果不是通过my.ini配置文件设置的内容,只在当前状态下有效,当重启数据库服务后失效。所以如果想要不出现乱码只有修改my.ini文件,数据库编码可以在创建数据库时候指定UTF8,如下:
|character_set_client      | utf8                                  |
| character_set_connection | utf8                                  |
| character_set_database   | utf8                                  |
| character_set_filesystem | binary                                |
| character_set_results    | utf8                                  |
| character_set_server     | latin1                                |
| character_set_system     | utf8         

注意该配置| character_set_server     | latin1 无法设置成UTF8
交互时候仍然会出现乱码。

只有当修改my.ini中设置UTF8,才会全部修改成UTF8

-------------------------
mysql设置编码命令

SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;

SET collation_connection = utf8_bin;
SET collation_database = utf8_bin;
SET collation_server = utf8_bin;

my.ini中配置默认编码
default-character-set=utf8

连接数据库设置编码
jdbc:mysql://192.168.0.5:3306/test?characterEncoding=utf8


java中的常用编码UTF-8;GBK;GB2312;ISO-8859-1;
对应mysql数据库中的编码utf8;gbk;gb2312;latin1



---------------------------
数据库连接串中指定字符集URL=jdbc:mysql://yourIP/college?user=root&password=yourPassword&useUnicode=true&characterEncoding=gbk
分享到:
评论

相关推荐

    MySQL乱码解决方案数据库乱码

    解决MySQL乱码问题的关键在于确保各个层级(服务器端、客户端、数据库、表、字段)的字符集设置一致,并且正确。通过上述方法,我们可以有效地避免和解决MySQL中的乱码问题,从而保证数据的一致性和准确性。

    mysql 数据库乱码处理

    造成乱码的原因多种多样,可能是由于数据库字符集的不正确设置、数据导入时的编码错误等。下面我们将详细讨论 MySQL 数据库乱码处理的方法。 1. 选择正确的字符集 在创建数据库时,选择正确的字符集是非常重要的。...

    MYSQL字符集乱码的解决

    ### MySQL字符集乱码问题及解决方案 #### 一、问题背景 在使用MySQL数据库时,很多用户会遇到中文字符显示为乱码的情况。这通常是因为MySQL数据库中的字符集设置不一致导致的。例如,在命令行下操作MySQL时,可能会...

    如何解决MYSQL数据库中文乱码问题-.docx

    在实际的开发和应用中,MYSQL数据库中文乱码问题是一个常见的问题,这个问题的出现往往是由于数据库字符集的不正确设置所引起的。解决MYSQL数据库中文乱码问题需要从多方面入手,包括数据库创建、表创建、数据插入、...

    设定mysql字符集解决终端乱码

    ### 设定 MySQL 字符集解决终端乱码 在处理数据库操作时,经常遇到的一个问题是字符集编码不一致导致的数据乱码问题。对于 MySQL 数据库来说,合理设置字符集可以有效避免此类问题的发生。本文将详细介绍如何通过...

    mysql乱码问题解决办法

    ### MySQL乱码问题解决办法 在使用MySQL的过程中,经常会出现字符显示乱码的问题,尤其是在处理中文数据时更为常见。本文将详细介绍如何通过多种途径解决MySQL中的乱码问题,包括更改MySQL服务器的字符集设置、调整...

    在DELPHI中使用MyDAC连接MySQL数据库时中文显示乱码的解决方法

    2. **数据库表的字符集设置**:如果MySQL数据库中的表字符集不是统一的UTF-8,那么在查询时就可能出现乱码现象。 3. **连接参数配置不当**:在使用MyDAC组件建立数据库连接时,如果没有正确设置字符集参数,也可能...

    mysql乱码解决方法

    在使用MySQL数据库与PHP配合开发网站时,有时会遇到乱码问题,这通常是由于字符集设置不一致导致的。以下是一些常用的解决方法: 1. **配置数据库环境**: - 在使用工具如ZendStudio或phpMyAdmin管理MySQL时,确保...

    mysql 字符集 乱码问题

    6. **修改已存在的数据库字符集**:对于已存在的数据库,可以通过`ALTER DATABASE`命令修改其字符集。 - 示例命令:`ALTER DATABASE dbname DEFAULT CHARACTER SET utf8;` 7. **修改表的字符集**:同样地,对于表...

    mysql乱码解决问题

    - 创建新的数据库时指定字符集: ```sql CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci; ``` - 修改现有数据库的字符集: ```sql ALTER DATABASE dbname CHARACTER SET utf8 COLLATE ...

    Mysql中文乱码问题解决方案

    3. **数据库和表的字符集**:创建数据库和表时,如果没有指定合适的字符集,可能会导致乱码。应确保使用支持中文的字符集,如`utf8`或`utf8mb4`。 4. **字段的字符集**:即使数据库和表的字符集设置正确,如果某个...

    mac MySQL中文乱码解决办法

    在macOS系统中,使用MySQL数据库时,可能会遇到中文乱码的问题,这通常是由于字符集设置不正确导致的。本文将详细介绍如何解决macOS系统下MySQL中文乱码的问题,通过修改配置文件my.cnf来调整MySQL的字符集,确保...

    Kettle推送数据到Mysql数据库表时乱码.docx

    Kettle 推送数据到 Mysql 数据库表时乱码解决方案 Kettle 是一个功能强大且流行的数据集成工具,广泛应用于数据抽取、转换和加载(ETL)过程中。然而,在使用 Kettle 将数据推送到 Mysql 数据库表时,可能会出现...

    mysql乱码问题解决

    2. **数据库字符集**:通过创建数据库时指定或后续更改来设置。 3. **表的字符集**:创建表时可以通过`DEFAULT CHARACTER SET`来指定。 4. **连接字符集**:即客户端与服务器之间的通信字符集,由`character_set_...

    mysql中文乱码解决

    如果是在开发过程中遇到乱码问题,推荐使用第三种方法,在创建数据库时指定字符集;如果是部署到生产环境中,建议采用第二种方法调整`my.ini`配置文件或第四种方法修改系统配置文件,确保所有数据库都使用统一的字符...

    c#解决mysql乱码问题的解决及mysql数据库操作的封装

    在C#编程中,与MySQL数据库交互时可能...总之,解决MySQL乱码问题的关键在于统一字符集设置和正确处理编码转换,而封装数据库操作则可以提高代码的复用性和模块化程度。希望这篇文章能帮助你更好地理解和处理这些问题。

    解决MySQL的乱码.pdf

    解决 MySQL 乱码问题的思路就是把网站先前的 Latin1 字符集数据库改为 GBK 字符集的数据库。首先需要把数据库导出。 导出数据库的命令是 mysqldump,格式如下: 1. 导出整个数据库:mysqldump -u用户名 -p密码 ...

Global site tag (gtag.js) - Google Analytics