【问题标题】:How to suppress Warning: Incorrect string value when inserting UTF8 in Django/MySQL如何抑制警告:在 Django/MySQL 中插入 UTF8 时字符串值不正确
【发布时间】:2016-04-01 21:41:29
【问题描述】:

/var/www/virtualenv-2.7/lib/python2.7/site-packages/django/db/backends/mysql/base.py:112:警告:不正确的字符串值:'\xF0\x9F\x8C\ x9D\xF0\x9F...' 用于第 1 行的列 'text'

我知道 MySQL 只存储 3 字节 UTF8 而不是 4 字节 UTF8。

我正在尝试存储表情符号,但我只是不打算包含它们,而只是包含纯文本。

如何让这个警告消失或不出现?

【问题讨论】:

标签: mysql django


【解决方案1】:

您是否尝试过更改数据库表和列的字符集和排序规则属性以使用 utf8mb4 而不是 utf8 ? 也尝试添加

'OPTIONS': {'charset': 'utf8mb4'} 

到您的数据库配置:

【讨论】:

  • utf8mb4 需要 MySQL 5.5,但我使用的是 MySQL 5.1
  • 好吧,您的选择是:(1) 升级或 (2) 避免使用表情符号。
猜你喜欢
  • 2016-06-08
  • 1970-01-01
  • 2016-08-31
  • 2011-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-02
  • 2020-06-20
相关资源
最近更新 更多