MYSQL数据库使用UTF-8中文编码乱码的解决办法

 更新时间:2015年10月20日 16:29:26   投稿:lijiao  
这篇文章主要介绍了MYSQL数据库使用UTF-8中文编码乱码的解决办法,需要的朋友可以参考下

1.用phpmyadmin创建数据库和数据表
创建数据库的时候,请将“整理”设置为:“utf8_general_ci”
或执行语句:

复制代码 代码如下:
CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 

创建数据表的时候:如果是该字段是存放中文的话,则需要将“整理”设置为:“utf8_general_ci”,
如果该字段是存放英文或数字的话,默认就可以了。
相应的SQL语句,例如:

CREATE TABLE `test` ( 
`id` INT NOT NULL , 
`name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , 
PRIMARY KEY ( `id` ) 
) ENGINE = MYISAM ; 

2.用PHP读写数据库
在连接数据库之后:

复制代码 代码如下:
$connection = mysql_connect($host_name, $host_user, $host_pass); 

加入两行:

mysql_query("set character set 'utf8'");//读库 
mysql_query("set names 'utf8'");//写库 

就可以正常的读写MYSQL数据库了。
用的appserv-win32-2.5.10做的环境,装这个包的时候用默认的utf8编码。
在写数据库连接文件时,写成:

$conn = mysql_connect("$host","$user","$password"); 
mysql_query("SET NAMES 'UTF8'"); 
mysql_select_db("$database",$conn); 

然后在做页面时,注意这句:

复制代码 代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

这样不管输入数据库的中文,还是页面显示,就都正常了。
在DW CS4版里,默认生成的也是utf8页面。
同样的,如果一开始写数据库连接文件时写成:

mysql_query("SET NAMES 'GBK'"); 

那页面也要相应变成:

复制代码 代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 

总结,最后主要是页面编码要统一就可以很方便的解决乱码问题,特别是在mysql_query()这个set names的设置必须和页面及数据库编码统计一就可以了。

希望这两篇关于UTF-8中文编码乱码的文章,能够更好地帮助大家解决这类问题,希望大家喜欢。

相关文章

  • 查看linux服务器上mysql配置文件路径的方法

    查看linux服务器上mysql配置文件路径的方法

    下面小编就为大家带来一篇查看linux服务器上mysql配置文件路径的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • mysql 控制台操作

    mysql 控制台操作

    其实MYSQL的对数据库的操作与其它的SQL类数据库大同小异,您最好找本将SQL的书看看。
    2009-06-06
  • MySQL修改账号密码方法大全(小结)

    MySQL修改账号密码方法大全(小结)

    这篇文章主要介绍了MySQL修改账号密码方法大全(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • CentOS 7下使用rpm包安装mysql 5.7.18

    CentOS 7下使用rpm包安装mysql 5.7.18

    这篇文章主要为大家详细介绍了CentOS 7下使用rpm包安装mysql 5.7.18的教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Mysql树形递归查询的实现方法

    Mysql树形递归查询的实现方法

    这篇文章主要给大家介绍了关于Mysql树形递归查询的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • SQL处理时间戳时如何解决时区问题实例详解

    SQL处理时间戳时如何解决时区问题实例详解

    时间戳时间不分东西南北、在地球的每一个角落都是相同的,下面这篇文章主要给大家介绍了关于SQL处理时间戳时如何解决时区问题的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • MySql之授权用户权限如何设置

    MySql之授权用户权限如何设置

    这篇文章主要介绍了MySql之授权用户权限如何设置问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • MySQL高效分页解决方案集分享

    MySQL高效分页解决方案集分享

    这篇文章介绍了MySQL高效分页解决方案集,有需要的朋友可以参考一下
    2013-11-11
  • MySQL 权限表db、tables_priv、columns_priv和procs_priv的具体使用

    MySQL 权限表db、tables_priv、columns_priv和procs_priv的具体使用

    MySQL中有多个权限相关的表,本文主要介绍了MySQL 权限表db、tables_priv、columns_priv和procs_priv的具体使用,感兴趣的可以了解一下
    2023-11-11
  • 深入理解mysql的自连接和join关联

    深入理解mysql的自连接和join关联

    这篇文章主要给大家介绍了关于mysql的自连接和join关联的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-04-04

最新评论