将msyql Largebinary输出转换为csv

时间:2019-03-10 17:05:32

标签: python mysql pandas csv

我有一个MySQL数据库

class Dataset(db.Model):
    data = db.Column(db.LargeBinary)

我已将CSV保存在数据库中,我想检索CSV并读入Pandas。当我将数据作为SQL查询检索时,得到字节数据 我有一个使用flask sql_alchemy的数据库,该类如下所示: 类Dataset(db.Model):     数据= db.Column(db.LargeBinary) 在数据库上,我已经将csv保存为文件, 我想检索csv并以熊猫形式读取它:当我查询数据库时: file_data = Dataset.query.get(1) file_data.data返回字节数据,而不是如下所示的csv:

b'PK \ x03 \ x04 \ x14 \ x00 \ x06 \ x00 \ x08 \ x00 \ x00 \ x00!\ x00b \ xee \ x9dh ^ \ x01 \ x00 \ x00 \ x90 \ x90 \ x04 \ x00 \ x00 \ x13 \ x00 \ x08 \ x02 [Content_Types] .xml \ xa2 \ x04 \ x02(\ xa0 \ x00 \ x02 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 我尝试使用通用编码(例如utf-8,latin1等)将文件转换为字符串。我收到以下错误: 'utf-8'编解码器无法解码位置15-16的字节:无效的连续字节

1 个答案:

答案 0 :(得分:0)

我实际上解决了它,我只是使用了: pd.read_csv(BytesIO(file_data.data))