MySQL乱码终极解决方案
来源:互联网 发布:网络安全保密倡议书 编辑:程序博客网 时间:2024/04/26 20:05
从MySQL 4.1开始引入的多语言支持确实很棒,而且一些特性已经超过了其他的数据库系统。不过在测试过程中发现使用适用于MySQL 4.1之前的PHP语句操作MySQL数据库会造成乱码,即使是设置过了表字符集也是如此。
MySQL 4.1的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。
当我们按照原来的方式通过PHP存取MySQL数据库时,就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。
其实简单的方法是通过phpMyAdmin来设置。
设置下面几项:
通过以上设置,在phpMyAdmin中操作和查询的时候,中文字符都不会乱码了。
但是你会发现,在php程序中用以前的sql语句查询出来的结果还是乱码,问题就出在connection连接层上。
解决方法是在成功连接数据库之后,发送一句查询语句:
MySQL 4.1的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。
当我们按照原来的方式通过PHP存取MySQL数据库时,就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。
其实简单的方法是通过phpMyAdmin来设置。
设置下面几项:
1: 语言设置为 chinese (zh-utf-8)
2: MySQL 字符集: UTF-8 Unicode (utf8)
3: MySQL 连接校对: utf8_general_ci
4: 新增数据库和数据表的时候,整理项选择 utf8_general_ci
但是你会发现,在php程序中用以前的sql语句查询出来的结果还是乱码,问题就出在connection连接层上。
解决方法是在成功连接数据库之后,发送一句查询语句:
1: $this->LinkID = @mysql_connect($this->Host, $this->User, $this->Password);
2: @mysql_query('SET NAMES 'utf8'', $this->LinkID);
- MySQL乱码终极解决方案
- MySQL乱码终极解决方案
- MySQL乱码终极解决方案
- Mysql乱码终极解决方案
- MySql乱码的终极解决方案
- tomcat mysql 乱码终极解决方案
- mysql中文乱码终极解决方案
- PHP MySQL乱码终极解决方案
- PHP存取 Mysql 数据乱码终极解决方案
- Mysql中乱码问题的终极解决方案
- PHP服务器MYSQL乱码终极解决方案
- 中文乱码 终极解决方案
- Jquery乱码终极解决方案
- Jquery乱码终极解决方案
- 中文乱码 终极解决方案
- PHP与MYSQL搭配出现中文乱码的“终极”解决方案
- PHP与MYSQL搭配出现中文乱码的“终极”解决方案
- PHP连接mysql的乱码的终极解决方案
- Happy一下
- unix下如何判断一个文件夹是否存在?
- 用asp.net设计科技成果人才数据库起因
- XML
- 爆强新闻稿,来自《新龙族》
- MySQL乱码终极解决方案
- 冬天来了
- 在VC中调用WORD
- 谁能发我一首手记铃声?
- linux shell 备忘录
- jsp连接oracle
- Oracle 的入门心得-->强烈推荐
- RedHatAS3安装Apache+Sendmail+OpenWebMail笔记
- mysql4.0.20a使用之路(2)12/2