0

我正在尝试将一些数据更新到 mysql 表中,没有产生警告/错误,但插入的数据有一个额外的字符 0 并且字符串被截断。这是来自 Python shell 的代码:

>>> len(d) #d is a string with contents of an html email
12347
>>> d[:100]
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"    "http://www.=\r\nw3.org/TR/html4/loose.'
>>> a = mysql.connector.connect(user='root', password='mypass', database='mydb')
>>> cur = a.cursor(prepared=True)
>>> cur.execute('UPDATE emails set content=? where emailid=10', (d,))
>>> a.commit()
>>> cur.execute('SELECT content from emails WHERE emailid=10')
>>> cur.fetchall()
[('0<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional/',)]

如您所见,内容被截断并且还有一个额外的 '0' 。“内容”字段的类型是 MEDIUMTEXT,我尝试使用和不使用 sql_mode 作为严格,但结果是相同的。

4

0 回答 0