gpt4 book ai didi

python - 使用 Python 在 MySQL 中保存 BLOBS

转载 作者:行者123 更新时间:2023-11-30 01:22:18 24 4
gpt4 key购买 nike

我正在尝试将文件保存为 MySQL 数据库中的 BLOB。现在的数据库非常简单,一个表,其中一列“File”为 longblob 类型。

代码如下:

file = open("file.txt","r")
data = file.readlines()
dp = pickle.dumps(data,1)
sql = "insert into Files values (%s)"
cursor.execute(sql,(MySQLdb.escape_string(dp),))

这似乎上传得很好,但是在检索数据时,我在尝试解封时收到 EOFError 。如果我尝试完全不进行酸洗的过程,则字符串不会被转义,并且转义字符在写回文件时仍保留在字符串中(除非我缺少一个 python 步骤来进行转义/重新转义)。

sql = "select File from Files"
cursor.execute(sql)
ret = cursor.fetchone()
pickle.loads(ret[0])

EOFError exception

最佳答案

我不确定为什么 pickled 列表没有正确 unpickle,但我可以通过将 readlines 列表加入到字符串中并将其作为长文本类型上传到 MySQL 来解决此问题。

关于python - 使用 Python 在 MySQL 中保存 BLOBS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18404532/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com