提问人:supermario 提问时间:10/31/2013 最后编辑:supermario 更新时间:10/31/2013 访问量:7177
Django 排序规则的非法混合 (latin1_swedish_ci,IMPLICIT) 和 (utf8_general_ci,COERCIBLE)
Django Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)
问:
我正在使用 Django 1.5.4 和 Django-Regsitration 模块。每当我尝试使用波斯语字体注册用户时,我都会收到以下错误:
DatabaseError at /accounts/register/
(1267, "Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like'")
Request Method: POST
Request URL: http://127.0.0.1:8000/accounts/register/
Django Version: 1.5.4
Exception Type: DatabaseError
我在创建的其他表单中也有类似的问题:每当我用波斯字体填充字段时,我都会收到以下错误:
Warning at /accounts/profile/
Incorrect string value: '\xDA\xA9\xD8\xA7\xD8\xB1...' for column 'occupation' at row 1
为了解决这个问题,我做了:
使用 PhpMyAdmin,我将数据库的排序规则更改为“utf8_general_ci
没有效果。
我还在数据库上强制执行了utf8:
mysql> ALTER DATABASE djangodb charset=utf8;
还是没有效果。
所以感谢你的提示。
答: 暂无答案
评论
ALTER TABLE yourtable CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;