读书人

QT连接数据库兑现大对象存储

发布时间: 2013-01-23 10:44:50 作者: rapoo

QT连接数据库实现大对象存储
连上了数据库 要求应该是先压缩后存入数据库。。然后从数据库中读取出来。。。我先压缩后存入了数据库然后查询数据解压时数据大小就为0了。。。不知道哪里出错了
query.prepare("select filecontent(二进制文件) from files");
query.exec();
query.next();
QString title=query.value(0).toString();
QMessageBox::information(this,"OK!",qPrintable(title));这里有值
QByteArray tdata=query.value(0).toByteArray();
QMessageBox::information(this,"OK421!",qPrintable(QString::number(tdata.size()) ));这里也有值
QByteArray data=qUncompress(tdata);
QMessageBox::information(this,"OK421!",qPrintable(QString::number(data.size()) ));这里就是0了
[解决办法]
大对象多大?

100MB ?

我这里十几MB的试过没问题,再大没试过了
[解决办法]
QByteArray qUncompress ( const QByteArray & data )
解压之后产生一个新的bytearray返回。

读书人网 >QT开发

热点推荐