ホームページ >データベース >mysql チュートリアル >MySQL数据库中的各种乱码及其解决方法_MySQL

MySQL数据库中的各种乱码及其解决方法_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:56:54855ブラウズ

  1.在使用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;还可以一次性设置客户端的所有字符集.

  2.在.NET中与mysql数据库的时候我也碰到显示不了中文字符的情况实现!

  我的解决方法是在连接字符加上一个字符集CharSet=utf8;  

  3.在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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。