mysql表中的中文是乱码_mysql插入表中的中文显示为乱码或问号的解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。

今天在做ssh的博客项目时发现mysql数据库中的中文显示为问号,网上查阅了很多资料,都不是很全,所以我总结一下,供大家参考和自己复习。

1.我的计算机配置: windows系统(linux没试过)  mysql 5.6

mysql中文显示乱码或者问号是因为选用的编码不对或者编码不一致造成的,我是通过修改my.ini配置文件。(配置文件在安装的根目录下如下图)

02cef6eb4df30ac8e5ade5fada5cd1f3.png 原来的为my-default.ini (复制里面的内容改为my.ini,也就是重新命名)

2.然后在my.ini如下修改

[mydqld]和[client]段加入

default-character-set=utf8  (有的版本不支持default-character-set=utf8,用character_set_server=utf8来取代 default-character-set=utf8即可)

如果没有[client]就手工加入[client]段

【1】在[client]节点下添加 (这个如果是另一种character_set_server=utf8 这样写我的会报错1067【mysql服务无法启动】,大家可以试试)  (这个是客户端的编码配置)

default-character-set=utf8

【2】在[mysqld]节点下添加 (这个是服务器端编码的配置)(注:collation是排序方式)

character-set-server=utf8

collation-server=utf8_general_ci

修改后如下图所示:

8ff4d5be6933b8b6b49a4c4439fd7c6b.png

3.然后重启mysql即可

1)计算机---->右键--->管理---->服务和应用程序--->服务--->找到mysql即可

2)我比较喜欢用命令行

以管理员身份运行cmd.exe,进行如下操作。

关闭服务 net stop mysql

开启服务 net start mysql

8a171ede408d525bed0bf8847175de5d.png

END: 然后就可以来查看是否变了编码格式。还是在cmd中

1)输入 mysql -u root -p      进入mysql数据库

2)键入密码:*****(自己的密码,没有的话直接回车键,嗯其他情况如忘了root密码百度去orz。。)

3)show variables like 'char%';  显示编码格式

下图一为未修改my.ini配置文件的编码文件latin1(即ISO-8859-1),图二为已经修改过的。

a8ac7173d6f1254d7a143f33a3d78db1.png

图一(未修改)

49e178574993264707563c0207a29938.png

图二(已修改编码)

可以看出都已经更正为utf8了,这样新建立的数据库缺省就是UTF8编码了

彩蛋:

然后你以为到这就完了么,并没有。。

接下来你会发现报这个错如下所示。

e6929dd4d28f0b5b17cb5ee256ef7892.png

上述错误是什么引起的呢,还是因为编码不正确啊!因为使用了已经创建好的数据库和表但没有更改为utf-8;

通过以下命令查看表的编码为Latin1:

show create table tablename(数据库名.表名);

2436d60fd0c83a4f77030de0941bbddf.png

修改方法:

ALTER DATABASE `数据库` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

ALTER TABLE `数据表` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci   (注:此句把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:)

47f317181df283d969533d06079c04f1.png

6f8ab23434339bc0e32681cc8c1939f5.png

数据库编码的修改和查询

79753655093438abee8793abfea6d04a.png

总结:也就是要更改数据库的默认字符集为utf8,更改表的字符集为utf8,更改列的字符集为utf8,然后重新启动MYSQL服务;

最后大功告成!

32aa1a9825d26f035f9dd5f3a32cf8eb.png

附MySql表、字段、库的字符集修改及查看方法的链接:http://www.jb51.net/article/68856.htm

Node.js中针对中文的查找和替换无效的解决方法

Node.js中针对中文的查找和替换无效的解决方法.   //tags的值: tag,测试,帖子 var pos1 = tags.indexOf("测"); //这里返回-1 ta ...

win10下rdlc报表在vs(visual studio)中中文显示小方块的批量处理解决方法

在网上找vs中rdlc报表显示中文时显示小方块的解决方案,无外就是修改文本框的字体属性.但是对于维护已有的rdlc报表时,有中文的地方(此时都显示了小方块)会很多,再一个一个设置实在太麻烦.所以自己花 ...

myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法)

出现这个问题有以下三步解决思路: 1. 检查myeclipse的编码格式 windows---->Preferences---->general---->Workspace,右侧窗口 ...

Mysql向存储过程中传递中文参数变成乱码的解决方案

今天做程序需要用到一个存储过程,然后用php程序调用.  存储过程如下: delimiter $$ CREATE PROCEDURE disagree_upgrade_detail(a int,b t ...

在MySQL向表中插入中文时,出现:incorrect string value 错误

在MySQL向表中插入中文时,出现:incorrect string value 错误,是由于字符集不支持中文.解决办法是将字符集改为GBK,或UTF-8.      一.修改数据库的默认字符集   ...

mysql插入表数据中文乱码问题解决方案

一.问题 开发中遇到将其它数据库数据插入到mysql数据库表中一直会报类似如下错误: Incorrect string value: '\xE6\x88\x91' for column 'name' ...

(转)MySQL 插入数据时,中文乱码问题的解决

MySQL 插入数据时,中文乱码问题的解决  原文:http://www.cnblogs.com/sunzn/archive/2013/03/14/2960248.html 当向 MySQL 数据库插 ...

(转)MySQL数据表中带LIKE的字符匹配查询

MySQL数据表中带LIKE的字符匹配查询 2014年07月15日09:56    百科369 MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的 ...

将Hive统计分析结果导入到MySQL数据库表中(一)——Sqoop导入方式

https://blog.csdn.net/niityzu/article/details/45190787 交通流的数据分析,需求是对于海量的城市交通数据,需要使用MapReduce清洗后导入到HB ...

随机推荐

社保系列7《PSAM卡》

PSAM卡用于商户POS.网点终端.直联终端等端末设备上,负责机具的安全控管.PSAM卡具有一定的通用性.经过个人化处理的PSAM卡能在不同的机具上使用. PSAM卡支持多级发卡的机制,各级发卡方在卡 ...

李洪强iOS开发Swift篇—06_流程控制

李洪强iOS开发Swift篇—06_流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注 ...

UVa 10294 Arif in Dhaka (First Love Part 2)(置换)

题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=35397 [思路] Polya定理. 旋转:循环节为gcd(i,n) ...

samba服务器加入域控主机所需要修改的配置文件

samba服务器加入域控主机,成为域成员,当用户访问samba服务器上的共享文件时,直接到域控主机上进行认证.samba服务器上不需要像先前一样创建系统用户,创建samba用户及密码. 1.安装环境( ...

Leetcode-37-Sudoku Solver(Hard)

此处先留空 使用搜索和回溯,递归来实现 参考:http://blog.csdn.net/zxzxy1988/article/details/8586289 描述简介,代码量最少

VueJs 监听 window.resize 方法

Vuejs 本身就是一个 MVVM 的框架. 但是在监听 window 上的 事件 时,往往会显得 力不从心. 比如 这次是 window.resize 恩,我做之前也是百度了一下.看到大家伙都为这个 ...

如何用ABP框架快速完成项目(6) - 用ABP一个人快速完成项目(2) - 使用多个成熟控件框架

正如我在课程里面所讲的, 站在巨人的肩膀上的其中一项就是, 尽量使用别人成熟的框架. 其中也包括了控件框架   abp和52abp ...

python之路--while, 格式化输出, 编码

一 . while循环 while 条件: 循环体(break, continue) while True: content = input('你想对我说什么:,输入你最帅退出') if conten ...

Oracle 网络配置与管理

[学习目标] Oracle 监听器是一个服务器端程序,用于监听所有来自客户端的请求,并为其提供数 据库服务.因此对监听器的管理与维护相当重要.         本章主要内容是描述对Oracle 监听器 ...

QT下载区

http://download.qt.io/archive/qt/ 下载总网址: http://download.qt.io/ http://mirrors.hust.edu.cn/qtproject ...

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值