如何在Qtable python中从mysql数据库中检索类型blob?

时间:2014-05-21 02:46:37

标签: python pyqt blob

我创建简单的应用程序来显示数据库中的图像, 在这里,我在mysql数据库中有一个表,并且列类型为BLOB, 但是我不知道如何在pyqt表中显示来自mysql数据库的blob数据库中的数据......

这是我在表格中显示数据库数据的代码:

    myCursor.execute("SELECT no,people,image FROM absen")
    row= myCursor.fetchall()
    self.table.setRowCount(len(row)) 
    self.table.setColumnCount(3) 
    for i in range (len(row)):
        for j in range (1):
            item = Qt.QTableWidgetItem('%s' % (jum_baris[i][j + 1]))
            self.table.setItem(i, j, item)

当我运行时只显示“ÿØÿà”而不是列图像中的图像.. 如何解决这个问题...请帮帮我..

1 个答案:

答案 0 :(得分:0)

您必须将存储在数据库中的字节转换回图像。否则,它们只是被解释为一个字符串。 这可能会起到作用:

img = QImage.fromData(<your_blob>, <length_of_the_blob>, <image_format>)

检查http://qt-project.org/doc/qt-4.8/qimage.html以获取更多替代方案。

获得图像后,您可以采用多种方式在表格中显示图像。 其中一个概述如下: https://stackoverflow.com/a/14368007/2319400