python3图片转换二进制存入mysql

yipeiwu_com6年前Python基础

首先,在数据库中创建一个表,用于存放图片:

复制代码 代码如下:

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])

相关文章

Python使用当前时间、随机数产生一个唯一数字的方法

Python使用当前时间、随机数产生一个唯一数字的方法

本文实例讲述了Python使用当前时间、随机数产生一个唯一数字的方法。分享给大家供大家参考,具体如下: Python生成当前时间很简单,比Java的代码简短多了,Java产生时间可参考《...

全面理解Python中self的用法

刚开始学习Python的类写法的时候觉得很是麻烦,为什么定义时需要而调用时又不需要,为什么不能内部简化从而减少我们敲击键盘的次数?你看完这篇文章后就会明白所有的疑问。 self代表类的实...

Python流程控制 while循环实现解析

Python流程控制 while循环实现解析

一、语法 while 条件: 执行代码 while就是当的意思,它指当其后面的条件成立,就执行while下面的代码。 例:写一个从0打印到10的程序 count = 0 whi...

利用PyCharm操作Github(仓库新建、更新,代码回滚)

利用PyCharm操作Github(仓库新建、更新,代码回滚)

  Github是目前世界上最流行的代码存储和分享平台,而PyCharm是Python圈中最流行的IDE,它很好地支持了Git操作。本文将会介绍如何利用PyCha...

python 按照固定长度分割字符串的方法小结

有如下的一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21'。 借助python脚本,可以轻松实现,原理就是:字符...