Python实现将图片以二进制格式保存到MySQL数据库中,以及取出:
创建数据库表格式:
CREATE TABLE photo ( photo_no int(6) unsigned NOT NULL auto_increment, image MEDIUMBLOB, PRIMARY KEY (`photo_no`) );
Python实现将图片以二进制格式保存到MySQL数据库中:
import sys import pymysql from PIL import Image import os path = "./" fp = open("./1.png", 'rb') img = fp.read() fp.close() database = pymysql.connect(host="localhost", user="root", passwd="", db="hua") cursor = database.cursor() sql = "INSERT INTO photo (image) VALUES (%s);" args = (img) cursor.execute(sql, args) database.commit() cursor.close() database.close() print("============") print("Done! ")
Python实现从MySQL数据库中将二进制格式的图片保存到本地:
import pymysql as mdb import sys conn = mdb.connect(host='localhost',user='root',passwd='',db='hua') cursor = conn.cursor() cursor.execute("SELECT image FROM photo LIMIT 1") fout = open('quchu1.png','wb') fout.write(cursor.fetchone()[0]) fout.close() cursor.close() conn.close()