MySQL乱码终极解决方案
来源:互联网 发布:c语言怎么无限循环 编辑:程序博客网 时间:2024/04/26 20:58
从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来设置。
设置下面几项:
- 语言设置为 chinese (zh-utf-8)
- MySQL 字符集: UTF-8 Unicode (utf8)
- MySQL 连接校对: utf8_general_ci
- 新增数据库和数据表的时候,整理项选择 utf8_general_ci
通过以上设置,在phpMyAdmin中操作和查询的时候,中文字符都不会乱码了。
但是你会发现,在php程序中用以前的sql语句查询出来的结果还是乱码,问题就出在connection连接层上。
解决方法是在成功连接数据库之后,发送一句查询语句:
- $this->LinkID = @mysql_connect($this->Host, $this->User, $this->Password);
- @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的乱码的终极解决方案
- 分页使用
- ACE_Hash_Map的使用示例
- 百度开放百度空间了,大家快去抢注啊!
- 落单的影子
- 生活是什么?
- MySQL乱码终极解决方案
- 在表中间插入列名
- 使用hibernate的级联操作
- 用java实现浮点数的精确计算
- 准备在假期看的书
- 中国历史上15个异族的最后结局
- 张小娴经典语录- -
- Biztalk 开发之 更新SQL Server数据库
- 解读NTFS