2012-11-09 29 views
0

注意:复制并就这个问题和答案的阐述:https://groups.google.com/forum/?fromgroups=#!topic/django-users/OW_uSWCoObs不正确的字符串值运行时GeoDjango内置教程:“警告:不正确的字符串值”

您好,我试图去通过GeoDjango内置教程,当我尝试导入与LayerMapping我收到以下错误信息:

Warning: Incorrect string value: '\xC2\x85land...' for column 'name' at row 1 

我使用MySQL和我的字符集和校对规则设置为LATIN1(我也试过UTF8)。

回答

0

iso-8859-1latin1)字符插入到utf8列会导致MySQL抛出该错误。

这可以通过改变线路编码教程世界/ load.py从这个解决:

lm = LayerMapping(WorldBorder, world_shp, world_mapping, 
        transform=False, encoding='iso-8859-1') 

以下...

lm = LayerMapping(WorldBorder, world_shp, world_mapping, 
        transform=False, encoding='utf8') 

如需更多信息,请参见MySQL "incorrect string value" error when save unicode string in Django

有关更多详细信息,请参阅http://bugs.mysql.com/bug.php?id=30131,特别是在Windows用户的情况下(不要误导URL — this不是一个错误)。