mysql各种乱码及解决方法

文章作者 100test 发表时间 2007:10:15 11:55:24
来源 100Test.Com百考试题网



在使用mysql和php的时候出现过中文乱码问题
通过学习和网上查找总结以下:
1) 只要是gb2312,gbk,utf8等支持多字节编码的字符集都可以储存汉字,当然,gb2312中的汉字数量远少于gbk,而gb2312,gbk等都可在utf8下编码

2)用命令show variables like ’character\_set\_%’.查看当前字符集设定:
mysql> show variables like ’character\_set\_%’.
-------------------------- --------
| Variable_name | Value |
-------------------------- --------
| character_set_client | gb2312 |
| character_set_connection | gb2312 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | gb2312 |
| character_set_server | latin1 |
| character_set_system | utf8 |
-------------------------- --------
7 rows in set (0.02 sec)
(我这里设置了的字符是gb2312)
显示中文乱码主要有两个设置:character_set_connection 和character_set_results ,
如果你的这两个设置不支持中文编码,就会出现乱码,只要:set character_set_results =gbk.就设置中文编码了.

3).set names charset_name.还可以一次性设置客户端的所有字符集.
在.NET中与mysql数据库的时候我也碰到显示不了中文字符的情况实现!
我的解决方法是在连接字符加上一个字符集CharSet=utf8.



在PYthon中如果使用utf8编码的话
在创建数据的时候一定要加上default character set utf8 collate utf8_general_ci
不然输入中文的时候会出现:Data too long for column这样的提示信息!
create database test default character set utf8 collate utf8_general_ci


相关文章


mysq字符集出错问题及解决方法
mysql各种乱码及解决方法
mysql中建立外键的方法
mysqld安全应该注意的几个问题
SQL中EXCEPT和Notin的区别?
SQL语句的DECODE,NVL()函数
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛