Python如何向SQLServer存儲(chǔ)二進(jìn)制圖片
更新時(shí)間:2020年06月08日 10:09:14 作者:淋哥
這篇文章主要介紹了Python如何向SQLServer存儲(chǔ)二進(jìn)制圖片,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
需求是需要用python往 SqlServer中的image類型字段中插入二進(jìn)制圖片
核心代碼,研究好幾個(gè)小時(shí)的代碼:
安裝pywin32,adodbapi
image_url = "圖片鏈接"
try:
image_result = session.get(url=image_url, headers=headers, stream=True)
except:
image_result = session.get(url=image_url, headers=headers, stream=True)
local_filename = md5(image_url) + ".png"
print "圖片下載成功"
with open(local_filename, 'wb') as f:
for chunk in image_result.iter_content(chunk_size=1024):
if chunk: # filter out keep-alive new chunks
f.write(chunk)
f.flush()
f.close()
# 讀取圖片,二進(jìn)制格式,注意是rb
f1 = open(local_filename, "rb", )
b = f1.read()
f1.close()
# adodbapi支持插入二進(jìn)制數(shù)據(jù)流
Cfg = {'server': 'XXXXXXX9', 'password': 'XXXXXXX', 'db': 'XXXXXXX'}
constr = "Provider=SQLOLEDB.1; Initial Catalog=%s; Data Source=%s; user ID=%s; Password=%s; " % (Cfg['db'], Cfg['server'], 'drc_sql', Cfg['password'])
conn = adodbapi.connect(constr)
cursor = conn.cursor()
print "DocId", DocId
# docimageid在數(shù)據(jù)表是主鍵
docimageid = str(DocId) + str(image_location)
print "docimageid", docimageid
sql6 = " INSERT INTO docImages (DocId,docimageid,purpose) VALUES (%s,'%s','%s') " % (int(DocId), int(docimageid), 'doclogo')
# print sql6
cursor.execute(sql6)
conn.commit()
#插入圖片
cursor.execute('update docImages set Img=? where docimageid= ? ',(adodbapi.Binary(b), docimageid,))
conn.commit()
print "圖片保存成功"
先插入相關(guān)信息,再去update圖片到數(shù)據(jù)庫里面。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解pytorch中squeeze()和unsqueeze()函數(shù)介紹
這篇文章主要介紹了詳解pytorch中squeeze()和unsqueeze()函數(shù)介紹,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
pytorch 彩色圖像轉(zhuǎn)灰度圖像實(shí)例
今天小編就為大家分享一篇pytorch 彩色圖像轉(zhuǎn)灰度圖像實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01
Python實(shí)現(xiàn)遍歷子文件夾并將文件復(fù)制到不同的目標(biāo)文件夾
這篇文章主要介紹了如何基于Python語言實(shí)現(xiàn)遍歷多個(gè)子文件夾,將每一個(gè)子文件夾中大量的文件,按照每一個(gè)文件的文件名稱的特點(diǎn)復(fù)制到不同的目標(biāo)文件夾中,感興趣的可以了解下2023-08-08
python使用OpenCV實(shí)現(xiàn)多目標(biāo)跟蹤
這篇文章主要介紹了python使用OpenCV實(shí)現(xiàn)多目標(biāo)跟蹤,如何在OpenCV中使用MultiTracker類實(shí)現(xiàn)多目標(biāo)跟蹤API。在深入了解詳細(xì)信息之前,請(qǐng)查看下面列出的關(guān)于目標(biāo)跟蹤的帖子,以了解在OpenCV中實(shí)現(xiàn)的單個(gè)目標(biāo)跟蹤器的基礎(chǔ)知識(shí),需要的朋友可以參考一下2022-04-04
對(duì)pandas的算術(shù)運(yùn)算和數(shù)據(jù)對(duì)齊實(shí)例詳解
今天小編就為大家分享一篇對(duì)pandas的算術(shù)運(yùn)算和數(shù)據(jù)對(duì)齊實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12

