MYSQL中文乱码问题的解决方案


Posted in MySQL onJune 14, 2022

一、乱码的原因:

1、 client客户端的编码不是utf8

2、server端的编码不是utf8

3、database数据库的编码不是utf8

4、数据库的表的编码不是utf8

5、表中的列字段编码不是utf8

主要的原因在于前三个偏多。

二、查看数据库的编码方式

mysql>show variables like ‘character%';

MYSQL中文乱码问题的解决方案

此截图是解决之后的,查看哪个不是和上面一样。

三、解决的办法有俩种:

1、对/etc/mysql/my.cnf 配置文件进行修改

[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

2、由mysql -uroot -p命令进入mysql,输入以下设置

SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

针对在客户端输入:数据库、表、列字段设置

alter database <数据库名> character set utf8;

alter table <表名> character set utf8;

alter table <表名> modify <字段名> character set utf8;

注意:设置之后记得重启,输入命令:service mysql restart

四、本人在项目遇到乱码问题是以下方法解决的

出现问题的形式:项目的服务器向数据库插入数据时,表中的数据中文为乱码。

解决方法:对封装的数据库操作类中,建立连接数据库时,设置字符集utf8

//建立连接后, 自动调用设置字符集语句,_dbConf._charset = utf8
 if(!_dbConf._charset.empty()) {	
 if (mysql_options(_pstMql, MYSQL_SET_CHARSET_NAME, _dbConf._charset.c_str())) {
 throw MysqlHelper_Exception(string("MysqlHelper::connect: mysql_options MYSQL_SET_CHARSET_NAME ") + _dbConf._charset + ":" + string(mysql_error(_pstMql)));
 }
 }

完美解决向数据库插入数据时中文乱码问题。

总结

到此这篇关于MYSQL中文乱码问题解决的文章就介绍到这了,更多相关MYSQL中文乱码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

MySQL 相关文章推荐
详解MySQL事务的隔离级别与MVCC
Apr 22 MySQL
zabbix监控mysql的实例方法
Jun 02 MySQL
浅谈mysql返回Boolean类型的几种情况
Jun 04 MySQL
MySql 8.0及对应驱动包匹配的注意点说明
Jun 23 MySQL
Centos7中MySQL数据库使用mysqldump进行每日自动备份的编写
Aug 02 MySQL
浅谈MySQL表空间回收的正确姿势
Oct 05 MySQL
MySQL基于索引的压力测试的实现
Nov 07 MySQL
MySQL 服务和数据库管理
Nov 11 MySQL
mysql中整数数据类型tinyint详解
Dec 06 MySQL
SQL基础查询和LINQ集成化查询
Jan 18 MySQL
weblogic服务建立数据源连接测试更新mysql驱动包的问题及解决方法
Jan 22 MySQL
MySql数据库 查询时间序列间隔
May 11 MySQL
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
Jun 14 #MySQL
MySql如何将查询的出来的字段进行转换
Jun 14 #MySQL
MySQL安装失败的原因及解决步骤
MySQL范围查询优化的场景实例详解
Jun 10 #MySQL
MySQL数据库如何查看表占用空间大小
Jun 10 #MySQL
mysql中关键词exists的用法实例详解
Jun 10 #MySQL
sql注入报错之注入原理实例解析
Jun 10 #MySQL
You might like
PHP 数组和字符串互相转换实现方法
2013/03/26 PHP
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
PHP-FPM之Chroot执行环境详解
2015/08/03 PHP
thinkPHP使用post方式查询时分页失效的解决方法
2015/12/09 PHP
php之header的不同用法总结(实例讲解)
2017/11/28 PHP
JQUBAR1.1 jQuery 柱状图插件发布
2010/11/28 Javascript
formValidator3.3的ajaxValidator一些异常分析
2011/07/12 Javascript
jQuery学习笔记 获取jQuery对象
2012/09/19 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
浅析javascript 定时器
2014/12/23 Javascript
Angular 根据 service 的状态更新 directive
2016/04/03 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
2017/07/13 Javascript
angular2路由切换改变页面title的示例代码
2017/08/23 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
jQuery实现的简单歌词滚动功能示例
2019/01/07 jQuery
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
新手简单了解vue
2019/05/29 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
[56:41]iG vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/17 DOTA
Python的subprocess模块总结
2014/11/07 Python
python定时执行指定函数的方法
2015/05/27 Python
基于python时间处理方法(详解)
2017/08/14 Python
Python中pillow知识点学习
2018/04/30 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
Python装饰器模式定义与用法分析
2018/08/06 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
Python 支持向量机分类器的实现
2020/01/15 Python
Django获取model中的字段名和字段的verbose_name方式
2020/05/19 Python
厨师岗位职责
2013/11/12 职场文书
模具数控专业自荐信
2014/01/27 职场文书
民生工作实施方案
2014/05/31 职场文书
作风整顿个人剖析材料
2014/10/06 职场文书