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

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

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

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

   原来的为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

  修改后如下图所示:

  3.然后重启mysql即可

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

     2)我比较喜欢用命令行

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

    关闭服务 net stop mysql

    开启服务 net start mysql

        

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

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

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

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

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

  

                           图一(未修改)

  

                  图二(已修改编码)

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

  彩蛋:

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

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

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

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

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

  

  修改方法:

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

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

  

  

  

  数据库编码的修改和查询

  

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

  最后大功告成!

  

  

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

  

  

  

  

  

mysql插入表中的中文显示为乱码或问号的解决方法的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. ExtJS grid tableGrid study

    Q:  How to color the text in the grid Try: http://dev.sencha.com/playpen/docs/output/Ext.grid.TableG ...

  2. Fork/Join框架之双端队列

    简介 ForkJoinPool管理着ForkJoinWorkerThread线程,ForkJoinWorkerThread线程内部有一个双端队列,这个双端队列主要由一个数组queue.数组下标queu ...

  3. [Angular-Scaled Web] 7. Refactor code into Models

    In the previous code, both categories and bookmarks are binded to $rootscope, or let says the same s ...

  4. 教你用Cocosdx导出安卓安装文件(.apk)(一)

    我也是刚弄出来,过程可能有点混乱和不具体,我尽我所能写完整.各位看官多多包涵 设备环境: 我所用的是mac 10.8.5    64位 Cocosdx-3.0rc2 xcode 5.0 一.准备 ND ...

  5. 【windows socket+TCPserverclient】

    Windows Socket+TCPserverclient      Winsock是 Windows下套接字标准.          Socket套接字基于计算机网络,提供同一系统上不同进程或由局 ...

  6. fs/ext2/inode.c相关函数注释

    用数组chain[4]描述四种不同的索引,即直接索引.一级间接索引.二级间接索引.三级间接索引.举例说明这个结构各个域的含义.如果文件内的块号为8,则不需要间接索引,所以只用chain[0]一个Ind ...

  7. 查看Linux系统架构类型的5条常用命令

    导读 很多时候我们都需要查看当前 Linux 系统是 32 位还是 64 位系统架构类型,本文中我将向大家推荐 5 条常用命令.无论你使用的是桌面版或是只装了文本界面的 Linux 环境,以下命令几乎 ...

  8. 架构设计:负载均衡层设计方案(7)——LVS + Keepalived + Nginx安装及配置

    1.概述 上篇文章<架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层>(http://blog.csdn.net/yinwenjie/artic ...

  9. LeetCode28 Implement strStr()

    题目: Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if ne ...

  10. EntityFramework优缺点(转)

    Entity Framework  是微软推荐出.NET平台ORM开发组件, 现在已放源代码.  以下我们来讨论一下优缺点和一些问题, 以下简称EF.  有兴趣可查询官网的Entity Framewo ...