Django+MySQL中文报错:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE7\\x8E\\x8B\\xE

在通过 Django 往 MySQL 中写入中文数据时,出现如下报错

运行环境:
…CentOS 7
…MySQL 5.7

报错信息:

django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE7\\x8E\\x8B\\xE6\\xB5\\xA9' for column 'studentname' at row 1")

这个报错是编码问题的报错,在经过改 cnf 配置文件设置编码,重启 MySQL;直接在 MySQL 终端改编码均失败之后,采用如下方法成功。

  1. 删除数据库(如果有数据请先备份)
  2. 指定编码重建数据库
  3. Django 重建表

SQL语句:

 CREATE DATABASE datablasename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Django 生成表:

python manage.py migrate

OK,完成!


联系我:微信公众号「大学IT圈」

你可能感兴趣的:(BUG&报错随记)