我想编写一个python脚本,用一些信息填充数据库。我表中的一列是BLOB,我想为每个条目保存一个文件。
如何读取文件(二进制文件)并使用python将其插入数据库?同样,我如何检索它并将该文件写回硬盘上的某个任意位置?
答案 0 :(得分:15)
thedata = open('thefile', 'rb').read()
sql = "INSERT INTO sometable (theblobcolumn) VALUES (%s)"
cursor.execute(sql, (thedata,))
该代码当然只有在您的表只有BLOB列和什么时才能编写 你想要做的是INSERT,但当然你可以轻松调整它以添加更多列, 使用UPDATE而不是INSERT,或者你需要做的任何事情。
我也假设你的文件是二进制而不是文本等;再次,如果我的猜测是 不正确的,你很容易相应地调整上面的代码。
某些SELECT
在cursor.execute
上,然后从光标中获取某种类型,就是你的方式
检索BLOB数据,就像检索任何其他类型的数据一样。
答案 1 :(得分:0)
您可以像其他所有列类型一样从DB插入和读取BLOB。从数据库API的角度来看,BLOB没什么特别的。