您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 编程语言综合 >> 正文

python3图片转换二进制存入mysql

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 MYSQL是支持把图片存入数据库的,也相应的有一个专门的字段BLOB (Binary Large Object),即较大的二进制对象字段,看下面代码

首先,在数据库中创建一个表,用于存放图片:     代码如下: CREATE TABLE Images(Id INT PRIMARY KEY AUTO_INCREMENT, Data MEDIUMBLOB);     然后运行如下PYTHON代码进行:      代码如下: # -*- coding: UTF-8 -*- import MySQLdb as mdb import sys try:     #用读文件模式打开图片     fin = open("../web.jpg")     #将文本读入img对象中     img = fin.read()     #关闭文件     fin.close() except IOError, e:     #如果出错,打印错误信息     print "Error %d: %s" % (e.args[0],e.args[1])     sys.exit(1) try:     #链接mysql,获取对象     conn = mdb.connect(host='localhost',user='root',passwd='root', db='test')     #获取执行cursor     cursor = conn.cursor()     #直接将数据作为字符串,插入数据库     cursor.execute("INSERT INTO Images SET Data='%s'" % mdb.escape_string(img))     #提交数据     conn.commit()     #提交之后,再关闭cursor和链接     cursor.close()     conn.close() except mdb.Error, e:     #若出现异常,打印信息     print "Error %d: %s" % (e.args[0],e.args[1])