新闻中心

由数据库导入报错引发的关于数据库编码格式utf8mb4问题思考

作者 / 无忧主机 时间 2015-04-09 12:17:54

无忧主机小编一直致力于用自己还算清晰的思路,给大家整理出能真正解决问题的文档,分享给大家。这不最近,有一位无忧主机php虚拟主机几年的老客户问了小编一个关于数据库导入的问题。小编自诩问题处理不少,数据库导入问题一眼也能看出问题的眉目,所以就开始帮客户处理。 客户网站的具体问题是,在数据库导入时提示大概是“没有定义的编码集utf8mb4”。utf8mb4?小编是第一次看到这个概念,之前接触比较多的是utf8。小编通过上网查找资料了解到,utf8mb4是utf8的一个衍生形式,utf-8里的一个字符只能最多支持3个字节,而utf8mb4则扩展到一个字符支持4个字节。值得一提的是,utf8mb4只有在mysql数据库版本是5.5.3+的时候才支持,如果低于这个版本,在用sql语句进行数据插入的时候,可以把utf8mb4改成utf8,这也是小编解决这位客户问题的方法。还有一种就是进行数据库升级了。那么utf8mb4和utf8具体应用区别在哪里呢?下面小编举个例子: 如下图中的特殊符号,就需要定义编码为utf8mb4格式,因为一个字符就有4个字节。如果设置utf8就会出现乱码: 由数据库导入报错引发的关于数据库编码格式utf8mb4问题思考 关于这两个编码,大家各取所需,选择一个合适的进行数据库编码就可以了。一般utf8格式可以满足绝大部分的需求。 无忧主机相关文章推荐阅读: 数据库导入常见四种报错 建站经验:SQL语句快速删除重复内容之我见 解决MYSQL4.0导入MYSQL5.0数据库乱码的办法 PHPMYADMIN报错“40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT”

本文地址:https://www.51php.com/mysql/19150.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服