django管理数据库之中文字符编码问题

django中通过models创建数据库字符编码文字
mysql数据库中默认的字符编码都为latin1,插入中文时会出现以下的错误类型

1366 - Incorrect string value: '\xE4\xB8\xAD\xE6\x96\x87' for column 'cName' at row 1 

此时更改数据库和数据库内表的字符集,代码如下:

CREATE  DATABASE  ms_db  CHARACTER SET  utf8  COLLATE utf8_general_ci; # 数据库修改
ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; #数据表的修改

对于错误:

Incorrect string value: '\xE6\xA2\xB5\xE8\x92\x82...'for column 'object_repr' at row 1

解决方法是设置django_admin_log表的object_repr一项使用utf8_unicode_ci;

对于错误:

Incorrect string value: '\xE6\xA2\xB5\xE8\x92\x82...'for column 'change_message' at row 1

解决方法是设置django_admin_log表的change_message一项使用utf8_unicode_ci;

 

猜你喜欢

转载自www.cnblogs.com/bianjing/p/9021949.html