有些区别, QSqlTableModel可以直接在View上修改,QSqlQueryModel我简单试了,不能在view上修改,也许需要进行其它设置吧。
Qt帮助里是这样的
QSqlQueryModel *model = new QSqlQueryModel;
model->setQuery("SELECT name, salary FROM employee");
model->setHeaderData(0, Qt::Horizontal, tr("Name"));
model->setHeaderData(1, Qt::Horizontal, tr("Salary"));
QTableView *view = new QTableView;
view->setModel(model);
view->show();
你在手动刷新的时候可以在model->setQuery("SELECT * FROM employee");
然后在试试。