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


Posted in MySQL onMay 26, 2021

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=UTF-8" /> 

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

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

MySQL 相关文章推荐
MySQL令人咋舌的隐式转换
Apr 05 MySQL
MySQL sql_mode修改不生效的原因及解决
May 07 MySQL
MySQL 分组查询的优化方法
May 12 MySQL
MySql学习笔记之事务隔离级别详解
May 12 MySQL
如何使用分区处理MySQL的亿级数据优化
Jun 18 MySQL
mysql 索引合并的使用
Aug 30 MySQL
Mysql数据库手动及定时备份步骤
Nov 07 MySQL
防止web项目中的SQL注入
Dec 06 MySQL
MySQL 数据表操作
May 04 MySQL
mysql 体系结构和存储引擎介绍
May 06 MySQL
MySQL GTID复制的具体使用
May 20 MySQL
MySQL下载安装配置详细教程 附下载资源
Sep 23 MySQL
Mysql效率优化定位较低sql的两种方式
May 26 #MySQL
Mysql中 unique列插入重复值该怎么解决呢
May 26 #MySQL
MySQL查看表和清空表的常用命令总结
May 26 #MySQL
MySQL中distinct与group by之间的性能进行比较
MySQL中distinct和count(*)的使用方法比较
May 26 #MySQL
MySQL中出现乱码问题的终极解决宝典
如何设计高效合理的MySQL查询语句
May 26 #MySQL
You might like
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
PHP 第二节 数据类型之字符串类型
2012/04/28 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
关于文本限制字数的js代码
2007/04/02 Javascript
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
Prototype Template对象 学习
2009/07/19 Javascript
JQuery SELECT单选模拟jQuery.select.js
2009/11/12 Javascript
js onload处理html页面加载之后的事件
2013/10/30 Javascript
JavaScript link方法入门实例(给字符串加上超链接)
2014/10/17 Javascript
Javascript中数组方法汇总(推荐)
2015/04/01 Javascript
JavaScript获取指定元素位置的方法
2015/04/08 Javascript
JQuery自适应窗口大小导航菜单附源码下载
2015/09/01 Javascript
javascript基本语法
2016/05/31 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
基于vue2的canvas时钟倒计时组件步骤解析
2018/11/05 Javascript
JavaScript如何获取一个元素的样式信息
2019/07/29 Javascript
Vue实现base64编码图片间的切换功能
2019/12/04 Javascript
k8s node节点重新加入master集群的实现
2021/02/22 Javascript
Python实现FTP上传文件或文件夹实例(递归)
2017/01/16 Python
Python爬虫包BeautifulSoup学习实例(五)
2018/06/17 Python
flask入门之文件上传与邮件发送示例
2018/07/18 Python
python 判断三个数字中的最大值实例代码
2019/07/24 Python
html5唤起app的方法
2017/11/30 HTML / CSS
Omio中国:全欧洲低价大巴、火车和航班搜索和比价
2018/08/09 全球购物
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
2016/08/18 面试题
《池塘边的叫声》教学反思
2014/04/12 职场文书
工会换届选举方案
2014/05/21 职场文书
机械工程学院大学生求职信
2014/05/25 职场文书
道路运输企业安全生产责任书
2014/07/28 职场文书
审查起诉阶段律师意见书
2015/05/19 职场文书
Pandas数据类型之category的用法
2021/06/28 Python
python可视化大屏库big_screen示例详解
2021/11/23 Python
Python进程间的通信之语法学习
2022/04/11 Python
PHP正则表达式之RCEService回溯
2022/04/11 PHP