mysql数据库 服务器字符集设置为 UTF-8  数据库 设置也是UTF-8  数据表也是UTF-8 所有字段都是UTF-8  链接也是UTF-8           在用navicat查询数据的时候                           会有数据出现乱码
                                   
            有时候页面请求返回的数据也会出现乱码情况  请问是什么情况会出现这种问题。

解决方案 »

  1.   

    修改了my.ini 为 UTF-8 ?那就只能是创建表的时候指定了
      

  2.   

    [mysql]default-character-set=utf8
    # SERVER SECTION[mysqld]default-character-set=utf8navicat乱码说明mysql客户端的编码没有设置,那个[mysql]就是负责这个的,还有就是navicat的编码也要是utf-8才行。最后show variables like 'character%' 查看下是不是编码是utf8了
    至于页面显示乱码,如果mysql编码设置正确的,我猜想很可能是你的web服务器的编码的问题
      

  3.   

    数据库里面存放的是乱码的话,那么请求回来的肯定是乱码喽。
    查找乱码问题,通常我是这么来做的:
    1.首先在代码中在将数据插入数据库之前,先把要插入的内容打印到控制台看看是不是乱码,如果是乱码的话说明是参数传递的问题,设置一下request的编码格式,或者重新编码一下读取的参数。
    2.如果第一步中不是乱码的话,那可能就是数据库的问题了,查看数据库的编码格式是不是正确的。
    3.如果2还不能解决,再看看mysql的my.ini配置文件:
    default-character-set=utf8
    character-set-server=utf8
      

  4.   

     我觉得也是服务器的问题。 如果是服务器的相关编码格式也是UTF-8呢 那怎么办 如何解决?