gpt4 book ai didi

python - 如何将postgreSQL中的文件保存到本地?

转载 作者:行者123 更新时间:2023-12-03 03:54:23 25 4
gpt4 key购买 nike

我要求在 Azure PostgreSQL 托管的表中保存大量文件(例如图像、.csv)。文件保存为二进制数据类型。是否可以通过 SQL 查询将它们直接提取到本地文件系统?我使用 python 作为我的编程语言,感谢任何指南或代码示例,谢谢!

最佳答案

如果您只想从 SQL 中提取二进制文件到本地并另存为文件,请尝试以下代码:

import psycopg2
import os

connstr = "<conn string>"
rootPath = "d:/"

def saveBinaryToFile(sqlRowData):
destPath = rootPath + str(sqlRowData[1])

if(os.path.isdir(destPath)):
destPath +='_2'
os.mkdir(destPath)
else:
os.mkdir(destPath)


newfile = open(destPath +'/' + sqlRowData[0]+".jpg", "wb");
newfile.write(sqlRowData[2])
newfile.close

conn = psycopg2.connect(connstr)
cur = conn.cursor()
sql = 'select * from images'
cur.execute(sql)
rows = cur.fetchall()
print(sql)
print('result:' + str(rows))
for i in range(len(rows)):
saveBinaryToFile(rows[i])

conn.close()

这是我的示例 SQL 表: enter image description here

结果:

enter image description here

enter image description here

关于python - 如何将postgreSQL中的文件保存到本地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65107781/

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