python-mysqldb插入图像int值错误

标签 python mysql raspberry-pi mysql-python

只是想用树莓派拍照并将实际的日期时间和图片插入mysql数据库...我尝试只插入日期时间...那很好。但插入图像时出错...

          image = open(picPath+filename, 'r')
            pic = image.read()
            mysql = MySQLdb.connect(host="local", user="root", passwd="bla", db="sexyimages")
            cur = mysql.cursor()
            sql = ("insert into test(SampleTime, picture) values(%s, %s)")
            cur.execute(sql, (jetzt, pic))
            mysql.commit()

警告:第 1 行“图片”列的整数值不正确:“???c?Exif” cur.execute(sql, (jetzt, pic))

有人有想法吗?

哦,使用 python-mysqldb

干杯

最佳答案

根据this answer我发现您必须先关闭文件指针并使用 MySQL.escape_string 方法转义字符串。试试这个:

image = open(picPath+filename)
pic = image.read()
image.close()

mysql = MySQLdb.connect(host="local", user="root", passwd="bla", db="sexyimages")
cur = mysql.cursor()
cur.execute("insert into test SET SampleTime='%s', picture='%s'") %(jetzt, MySQLdb.escape_string(pic))

mysql.commit()

关于python-mysqldb插入图像int值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26937654/

相关文章:

python - 与 MySQL 服务器 'remote_ip:3306' 失去连接,系统错误 : 2 No such file or directory

php - 遍历一行电子邮件

python - 属性错误: 'NoneType' object has no attribute 'group'

python - 如何使用 Raspbian 保持与蓝牙设备的连接

python - 从 Python 中的文本文件导入 3-D 列表变量

python - 使用 Unicode 发送 HTML 邮件

python - 将分组的 pandas 数据应用回原始数据框

python - 在Python中使用条件控制变量过滤数组以创建numpy矩阵

mysql group by 不改变union all中列表的顺序

python - 尝试连接外部 MySQL 数据库时卡在连接器上。连接