0
画像を挿入するためのテーブルが1つあります。それから、MySQLデータベースとPython 3コードを使用してイメージを取得します。私のコードはうまく実行されますが、私の問題はイメージを取得するたびに私のテーブルに配置された最初のイメージを表示していて、forループを使ってBLOBを1つずつ取り出す方法がわかりません。ここでPython 3を使用してMySQLデータベースから複数の画像を1つずつ取得
私のコードは次のとおりです。 - code.py:
from PIL import Image
import pymysql
from api import mysql
db=pymysql.connect(host="localhost",user="root",passwd="root",db="votelist")
image = Image.open('D:/mine project/face_reg/media/a.jpg')
blob = open('D:/mine project/face_reg/media/a.jpg', 'rb').read()
sql = 'INSERT INTO imo(image) VALUES(%s)'
args = (blob)
cursor=db.cursor()
cursor.execute(sql,args)
sql1='select image from imo'
# i=sql1
# for image in i:
# print(i)
# else:
# print("no")
db.commit()
cursor.execute(sql1)
data=cursor.fetchall()
print ('Inserted')
file_like=io.BytesIO(data[0][0])
img=PIL.Image.open(file_like)
img.show()
print('retrieved')
db.close()
...
'args =(blob)'にカンマがありません。これを1タプルにするには、 'args =(blob、)'でなければなりません。 –
ありがとうございました:) - コードを実行すると削除されました。 – shruthi