为什么MySql的表记录中有些中文显示问号

来源:百度知道 编辑:UC知道 时间:2024/06/23 17:33:29
如题,“陈煜劼”在表中会变成“陈煜??”就一个“劼”字没办法显示。。。
求高手解答,急切~在线等。
数据库编码用的是GB2312
如果不对,能不能告诉我用哪种编码谢谢啦~~~~~
UTF-8不行。。。

大家请看清问题描述呀,我遇到的问题是极少部分中文无法正常显示。。。比如“衎”,“劼”这两个字就没有办法正常保存到数据库和显示,而其他大部分中文都可以。

用UTF-8
如果是数据库中有乱码,就是录入数据时不是GB2312的。这只能重新修改记录了。如果只想输出时页面正常显示的话,那么就采用和你页面标准一直的编码。比如你页面是GB2312的话,就如楼下说的mysql_query(set names gb2312);
如果页面是utf-8就
mysql_query(set names utf8);

不需要UTF-8,不然这么多gb2312的网站都得完蛋了。
链接数据库后。
mysql_query(set names gb2312);
这就设置了输出的编码。

  这是字符集不一致造成的。
  修改mysql的默认字符集是通过修改它的配置文件来实现的。一般分两种情况:
  Windows平台
  windows下的mysql配置文件是my.ini,一般在c:windowsmy.ini或者c:winntmy.ini可 以直接在这个文件里面加上
  default-character-set=gbk #或gb2312,big5,utf8
  然后重新启动mysql
  service mysql restart 或 /etc/init.d/mysql restart
  或用其他方法重新启动,就生效了。
  Unix(linux)平台
  linux下的mysql配置文件是my.cnf,一般是/etc/my.cnf,如果找不到可以用find命令找一下:
  find / -iname my.cnf
  在这个文件里面加上
  default-character-set=gbk #或gb2312,big5,utf8
  然后重新启动mysql
  net stop mysql

那是乱码,建表的时候你可以指定编码格式。