从mysql 4.1引入的多语言支持真的很棒,有些特性已经超越了其他数据库系统。但是在测试过程中,我发现在MySQL 4.1之前用php语句操作MySQL数据库会出现乱码,即使设置了表字符集。我阅读了新的MySQL在线手册“字符集支持”的第10章最后我找到了解决办法,通过了测试。
MySQL 4.1的字符集支持有两个方面:字符集和排序规则。对字符集的支持细化为四个层次:服务器、数据库、表和连接。
您可以通过以下两个命令设置系统的字符集和排序模式:
mysql & gt显示类似“collation_%”的变量;
+-+-+
| Variable _ name | Value |
+-+
| collation _ connection | latin1 _ Swedish _ ci |
| collation _ database | latin1 _ Swedish _ ci |
| collation _ server | latin1 _ Swedish _ ci |
+-+
集合中的3行(0.00秒)
当我们以原来的方式通过PHP访问MySQL数据库时,即使表的默认字符集是utf8,查询是通过UTF-8编码发送的,你也会发现数据库中存储的代码仍然是乱码。问题就出在这个连接层。解决方案是在发送查询之前执行以下语句:
设置名称“utf8”;
相当于下面三条指令:
set character _ set _ client = UTF8;
SET character _ SET _ results = utf8;
SET character _ SET _ connection = utf8;
再试一次,正常吗?^_^享受!
关键词:问题、解决方案、latin1、MyS
优侠库网站每天提供最新最热门的安卓手机软件、游戏下载、分享热门手游资讯攻略教程、手机软件教程步骤,专注安卓手机游戏软件下载。本文链接:http://www.123down.cn/gonglue/227210.html