博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
总结--解决 mysql 中文乱码
阅读量:6080 次
发布时间:2019-06-20

本文共 1470 字,大约阅读时间需要 4 分钟。

首先分析一下导致mysql 中文乱码的原因:

1、建表时使用了latin 编码

2、连接数据库的编码没有指定

3、写入时就已经乱码(这种情况需要自己检查源数据了)

 

解决方法总结:

1.创建库时指定编码:
create database testdb default charset utf8

2.修改库的编码:

ALTER DATABASE `testtable` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

3.修改表的编码:

ALTER TABLE `testtable` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

4.修改字段的编码: 

ALTER TABLE `tablename` CHANGE `dd` `dd` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL

是将MYSQL数据库tablename表中 dd的字段编码改能够该为utf8

诊断过程:

1、SHOW CREATE TABLE  testtable; 使用建表语句查看当前表的编码如果是拉丁latin编码,则可以使用

ALTER DATABASE `testtable` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

进行更改表的编码

2、再次使用show create table 命令查看,表编码

如果发现当前列中编码也不正确,那么使用

ALTER TABLE `tablename` CHANGE `dd` `dd` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL

进行更扆dd这一列的编码

3、如果还是正确,那么查看下你的代码里的连接方式是否正确

jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8

我这里是java方面的连接,这里指定了连接的编码utf-8

到这里应该就可以了

4、修改系统默认编码

mysql> SHOW VARIABLES LIKE 'character%';mysql> SET character_set_client = utf8 ; mysql> SET character_set_connection = utf8 ; mysql> SET character_set_database = utf8 ; mysql> SET character_set_results = utf8 ; mysql> SET character_set_server = utf8 ; mysql> SET collation_connection = utf8 ; mysql> SET collation_database = utf8 ; mysql> SET collation_server = utf8 ;

 

 

参考文章:

1、http://www.2cto.com/database/201307/227538.html

2、http://zhidao.baidu.com/link?url=WtACC0jMIsOAk6eX6kJk8qjQhga28VgsYpNPY4Oc9sWH5fgU2OQm1An-IGiV4yZ-PE80VJ5ZB-YxrAVW3Jo8ua

 

转载地址:http://sgqgx.baihongyu.com/

你可能感兴趣的文章
从MFQ方法到需求分析
查看>>
android.view.WindowManager$BadTokenException: Unable to add window
查看>>
HDU5012:Dice(bfs模板)
查看>>
iphone openssh
查看>>
Linux下MEncoder的编译
查看>>
Javascript中闭包(Closure)的探索(一)-基本概念
查看>>
spark高级排序彻底解秘
查看>>
ylbtech-LanguageSamples-PartialTypes(部分类型)
查看>>
福建省促进大数据发展:变分散式管理为统筹集中式管理
查看>>
开发环境、生产环境、测试环境的基本理解和区别
查看>>
tomcat多应用之间如何共享jar
查看>>
Flex前后台交互,service层调用后台服务的简单封装
查看>>
MySQL入门12-数据类型
查看>>
Windows Azure 保留已存在的虚拟网络外网IP(云服务)
查看>>
修改字符集
查看>>
HackTheGame 攻略 - 第四关
查看>>
js删除数组元素
查看>>
带空格文件名的处理(find xargs grep ..etc)
查看>>
华为Access、Hybrid和Trunk的区别和设置
查看>>
centos使用docker下安装mysql并配置、nginx
查看>>