laravel如何应用mysql字符集utf8mb4?
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
苏南大叔认为:utf8
就是实用性最强的字符集了,现在的主流网页的字符集设定都是utf8
。最近在基于laravel
和easywechat
写微信公众平台的管理代码。
发现在mysql
中用utf8
的时候,居然也有不能显示的字符出现。那不能显示的字符是什么呢?就是emoj
字符...一些人的微信名称里面带emoj
,但是这些字符在mysql的utf8里面是不能保存的。只有把utf8
改成utf8mb4
才ok。别问我咋知道的,实践出真知。
配置laravel
修改laravel
的数据库配置文件config/databases.php
即可。
'mysql' => [
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
],
可能需要的sql语句
当然,对于,已经建好的表格。你还可能需要下面的类似sql语句:
ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE `TABLE_NAME` MODIFY `COLUMN_NAME` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
据说mysql5.5之后,才支持utf8mb4,所以,如果显示不支持字符集utf8mb4的话,请升级你的mysql。
您可能还需要如下sql语句:
查看数据库编码:
SHOW CREATE DATABASE db_name;
查看数据表编码:
SHOW CREATE TABLE tbl_name;
查看字段编码:
SHOW FULL COLUMNS FROM tbl_name;
结语
更多mysql相关文章,请点击查看。由苏南大叔为您带来的IT业界最新文章:
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。