QsqlDatabase db; if(QsqlDatabase::contains("test")) db = QsqlDatabase::database("test"); else db = QsqlDatabase::addDatabase("QsqlITE","test"); db.setDatabasename("black.db"); if(!db.open()) { QsqlDatabase::removeDatabase("QsqlITE"); return ; } QTime tmpTime; tmpTime.start(); Qsqlquery query(db); query.exec("select * from pixdata where card='1000123'"); int x= 0; while(query.next()) { x = query.value(0).toInt(); qDeBUG()<<query.value(0).toInt()<<query.value(1).toString(); } qDeBUG()<<"time"<<tmpTime.elapsed()<<"ms"; //query.clear(); db.close(); QsqlDatabase::removeDatabase("QsqlITE");
加了query.clear() 就正常了
Clears the result set and releases any resources held by the query. Sets the query state to inactive. You should rarely if ever need to call this function.
有道翻译:清理和释放结果集查询持有的任何资源。查询状态设置为不活跃。你应该几乎从不需要调用这个函数。
总结以上是内存溢出为你收集整理的Qt sqlite 查询内存泄漏全部内容,希望文章能够帮你解决Qt sqlite 查询内存泄漏所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)