QSqlQuery::value: not positioned on a valid record数据库
缘由:ide
在执行修改QTableView中数据后的提交,加入事务处理的时候遇到这个错误的时候spa
当时一直觉得是觉得QSqlQuery 跟 QSqlTableModel 中间数据插入或者删除出现了问题事务
猛然回首rem
发如今TableView中执行了removeRow某一行 修改为hide后就消失了错误it
总结:io
对于QSqlQuery 以及 QSqlTableView 理解不够深刻基础
QSqlQuery类提供了执行和操做的SQL语句。方法
QSqlQuery封装的功能有建立、浏览和检索数据,从QSqlDatabase上执行SQL查询。它能够用来执行DML(数据操做语言)语句,如选择、插入、更新和删除,以及DDL(数据定义语言)语句,如建立表。它也能够被用来执行特定于数据库的命令不标准的SQL(例如设置DATESTYLE = ISO PostgreSQL)。总结
当执行SQL语句时,调用isActive()方法,查询是否该数据被处理。
QSqlTableModel类提供了一个可编辑的数据库表的数据模型。它是创建在QSqlQuery的基础上,用视图的方式来显示数据库中的数据。