python3.x向mysql存储图片并显示

本篇博文主要介绍如何从python中与数据库建立联系,并且向数据库中存储图片
首先我们建好数据库,然后进入cmd,在系统操作框中输入ipconfig显示本机的ip信息
在这里插入图片描述
主要要获知本机ip地址。
我们需要在mysql中先建立一个表,并把字段设置好,输入下面代码:

create table image(id int(5)auto_increment primary key,image1 mediumblob)

然后我们需要打开python,我使用的是pycharm。
我们需要用到的包是 pymysql
我们把所要导进去的图片拖进pycharm中,设置好名称以便一会使用,我们首先读取图片文件(使用二进制读取方法,‘rb’)

f = open('2.jpg','rb')
img = f.read()
f.close()

然后我们与mysql进行连接:

gao = pymysql.connect(
                       host='157.142.13.27',#本机或其他机器的ip地址
                       port=3306,#接口
                       user='root',#用户名
                       passwd='******',#密码
                       db='gao',#你所使用的数据库
                       charset='utf8',#编码方式
                       use_unicode=True, )

创建游标,使用cursor函数:

g = gao.cursor()

读取图片信息

f = open('2.jpg','rb')
data = f.read()

使用execute函数修改数据库:

g.execute('insert into image(image1) values (%s)'%data)

注意:如果一直显示没有权限连接数据库,我们先登录数据库,并进入你的mysql数据库,然后改变host:

update user set host = '%' where user = 'root';
mysql>flush rivileges

注意在最后一定要关闭游标和连接。

写完我们可以在数据库中查看我们设的表中的内容,但由于解码方式,我们看到的是一堆乱码,我们可以在pycharm中显示图片。

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值