zoukankan      html  css  js  c++  java
  • Mysql数据库,表中有中文时,select出来好多问号(?)的解决方法

    在QQ群里问了一些高手,同时参考了这篇文章:http://huangyunbin.iteye.com/blog/1113983,终于把这个问题搞定了。

    首先,我用的是zip包的Mysql,直接解压使用的,网上说修改my.ini或者my.cnf在我机器上根本就找不到。但是my.ini这个东西是可以自己添加的。将mysql目录中的my-default.ini文件复制一份(原来的模板还是留一份不要乱动的好),重命名为my.ini。打开my.ini,在最后添上如下两行:

    [mysql]
    default-character-set=utf8

    保存。同时要检查 ./data/performance_schema目录下的db.opt文件中有这样两行:

    default-character-set=utf8
    default-ollation=utf8_chinese_ci

    之后是在数据库里进行设置。在mysql中输入

    1 mysql> show variables like ''char%'';

    可以看到我的数据库中字符集是酱婶的:

    遵照大部分网友的建议,除了filesystem那个binary不动,其它全部改成utf8好了。

    1 MYSQL>set character_set_client = 'utf8';
    2 MYSQL>set character_set_connection = 'utf8';
    3 MYSQL>set character_set_database = 'utf8';
    4 MYSQL>set character_set_results= 'utf8';
    5 MYSQL>set character_set_server='utf8';

    OK。可以再次执行show variables like ''char%'';查看修改结果。现在字符集都是UTF-8了。

    最后一步,要修改之前乱码的表,将字符编码也修改为UTF-8:

    1 MYSQL>alter table 表名 modify 列名 字段类型 character set utf8;

    这样就完成啦。再select一下之前的表,中文是不是都变过来了?

  • 相关阅读:
    多线程与多进程
    Socket网络编程
    Python之路【第五篇】:面向对象及相关
    python 面向对象(进阶篇)
    面向对象
    day1
    day3
    day2
    黑马程序员--C语言中的指针(6)
    黑马程序员--C语言中的指针(5)
  • 原文地址:https://www.cnblogs.com/anpengapple/p/4713171.html
Copyright © 2011-2022 走看看