这个问题,原因是UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。

我的解决方案是这样的

1.在mysql的安装目录下找到my.ini,作如下修改:

[mysqld]

character-set-server=utf8mb4

[mysql]

default-character-set=utf8mb4

修改后重启Mysql

2. 将已经建好的表也转换成utf8mb4

命令:

更改数据库编码:ALTER DATABASE caitu99 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

alter table TABLE_NAME convert to character set utf8mb4 collate utf8mb4_bin; (将TABLE_NAME替换成你的表名)

然后就OK了。网上流传的一个版本增加了一个步骤,就是把mysql环境变量将character_set_client,character_set_connection,character_set_database,character_set_results,character_set_server 都修改成utf8mb4,不过我没有做这一步,也正常,所以可能是这一步是多余的,如果需要改,则按照下面介绍做修改。

原文章

http://blog.csdn.net/likendsl/article/details/7530979

最新文章

  1. kali 2.0 U盘安装错误Your installation cd-rom couldn't be mounted
  2. CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
  3. [MEMO]: 机器学习教父级别的任务Jordan推荐的书籍
  4. android实现倒计时
  5. Android 播放视频并获取指定时间的帧画面
  6. 结构体struct和联合体union以及enum枚举体5的区别
  7. c#写的热键注册程序
  8. FFmpeg源代码结构图 - 编码
  9. vue-cli3.0 flexible&px2rem 解决第三方ui组件库样式问题
  10. wtforms组件使用实例及源码解析
  11. 记录tiny6410 使用linux-2.6.28.6内核遇到starting kernel...的问题
  12. Day03 - Ruby比一比:Module的include与extend
  13. Android学习笔记----Java中的字符串比较
  14. 点分治 poj1741
  15. <Using parquet with impala>
  16. MySql Cast与Convert函数
  17. centos7 安装svn, 同时支持 svn 和 http访问
  18. Luogu 1613 跑路(最短路径,倍增)
  19. 使用Arduino模块实施无线信号的重放攻击
  20. 数学建模及机器学习算法(一):聚类-kmeans(Python及MATLAB实现,包括k值选取与聚类效果评估)

热门文章

  1. [QT][转载] Qt信号和槽
  2. fedora 安装新字体 courier new xxx
  3. 网络爬虫必备知识之requests库
  4. mybatis 联表查询
  5. 利用Github免费搭建个人主页(个人博客)
  6. 计算机信息类ComputerInfo
  7. 如何移除双系统mac中的windows系统
  8. nmon的使用
  9. Yii框架的一些系统函数
  10. 高速PCB设计注意事项