migrate时报错django.db.utils.OperationalError: (1366
来源:4-5 自定义userprofile
慕码人6221433
2017-07-26
django.db.utils.OperationalError: (1366, "Incorrect string value: '\\xE7\\x94\\xA8\\xE6\\x88\\xB7...' for column 'name' at row 1")
写回答
2回答
-
小辉辉学编程
2017-09-05
该错误很少有人遇到,可能大家都是按照老师的环境配置来做的,但是我是在linux系统配置的环境,所以也遇到了该问题,该问题的主要原因是linux下mysql的字符集设置问题,他的utf-8编码不是实际的utf-8编码,因此遇到特殊的情况会报错。在网上找了很久发现是在数据库建库阶段,就要把编码方式指定好,同时要将所有存入数据库的字符转换成utf-8编码。以下是解决方法:
先在settings.py中添加:DEFAULT_CHARSET = 'utf-8
然后使用mysql命令行创建一个数据库,设置编码为utf8_general_ci,在写入数据前,将要写的字符串都转换为utf8:
CREATE DATABASE MxOnline DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
做完这两步后再重新运行makemigrations和migrate即可。
122019-12-30 -
bobby
2017-07-26
你的name这个字段是否设置的类型有问题 导致不能保存中文?
052017-09-06
相似问题