python - 保存 Unicode 时 MySql 出现 "Incorrect string value"错误

标签 python mysql django unicode utf-8

当我尝试将类似 украден 的内容添加到组名称字段时,出现此错误:

(1366, "第 1 行的列 'group_name' 的字符串值不正确:'\\xD1\\x83\\xD0\\xBA\\xD1\\x80...'")

首先,如果发生该错误,则不会创建任何组。但是,在我运行 MySql 命令将 django 数据库上发生错误的特定列的编码从 utf8 更改为 utf8_general_ci 后,该组是使用我输入了unicode字符,但使用unicode字符修改组名时仍然显示上述错误。

模型中的 Unicode 方法:

def __unicode__(self):
    return u'{}/{} (Group {})'.format(self.id, self.name,
                                      self.owner_group_id)

最佳答案

我认为这对您有用,请尝试让我知道它是否有效:

import MySQLdb as mdb
con = mdb.connect('host', 'user', 'pass', 'dbname')
cur = con.cursor()
con.set_character_set('utf8')
cur.execute('SET NAMES utf8;')
cur.execute('SET CHARACTER SET utf8;')
cur.execute('SET character_set_connection=utf8;')

关于python - 保存 Unicode 时 MySql 出现 "Incorrect string value"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451264/

相关文章:

mysql - phpMyAdmin (MySQL) 中对一个字段进行多次检查

php - 获取唯一值数组

python - Django数据库迁移: merging two fields into one

Python - 如何将整个 numpy 数组一次全部放入 Queue.Queue 但分别检索每一行

python - 使用 Plotly 和 Choropleth 绘制多边形

python - 从 Go 运行 Python 程序

数据库错误 : no such column: connect_connect. reciever_id

python - paho MQTT on_message 返回一条有趣的消息 - python

mysql - MySQL 数据库中的 FIFO

python - Django 测试, 'SQLCompiler' 对象没有属性 'col_count'