【发布时间】:2017-01-22 03:13:21
【问题描述】:
尝试将字段投射回自身会引发以下错误。
UPDATE <table> SET geo_field = CONVERT(CAST(CONVERT(geo_field USING latin1) AS BINARY) USING utf8);
[Err] 1416 - Cannot get geometry object from data you send to the GEOMETRY field
我正在尝试使用 django 1.9 来对 json 进行数据转储,但它一直卡在 latin-1 字符上。
我正在使用 mysql.gis 后端。
尝试在 python 中使用原始光标也没有用。
def convert_latin_uft8(badfields, table, host, user, passwd, db ):
import MySQLdb
con = MySQLdb.connect(host=host, user=user, passwd=passwd, db=db)
cur = con.cursor()
cur.execute("SELECT * FROM `{0}`;".format(table))
for item in cur.fetchall():
for field in badfields:
data =item[field].decode('latin1').encode('utf8')
print data
我被困住了。任何帮助将不胜感激。
【问题讨论】:
标签: python mysql utf-8 geodjango iso-8859-1