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

Posted 本名边境

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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;

 

 

 

 

 

 

 

 

 

 


以上是关于django管理数据库之中文字符编码问题的主要内容,如果未能解决你的问题,请参考以下文章

Django 管理员添加表单 ajax 调用

Django之Form组件与验证规则

django 项目中mysql 的编码,数据库迁移问题

django之管理静态文件

在 Django 管理界面中链接以直接从数据库中下载模型字段

Django之自带ORM框架