如何使用QSqlQueryModel在QTableView中显示多次选择的结果
How to show the result of multiple selects in QTableView using QSqlQueryModel
我使用以下方法在QTableView
中显示select语句的结果。我应该如何修改此代码以显示同一QTableView
中两个或多个不同select语句的结果?
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
QString dbPath = "test1.db";
db.setDatabaseName(dbPath);
QSqlQueryModel *model = new CustomSqlModel();
QSqlQuery* query = new QSqlQuery(db);
query->prepare("SELECT * FROM MyTable");
query->exec();
model->setQuery(*query);
model->setHeaderData(0, Qt::Horizontal, "Col1");
model->setHeaderData(1, Qt::Horizontal, "Col2");
model->setHeaderData(2, Qt::Horizontal, "Col3");
QTableView* tableView = new QTableView();
tableView->setModel(model);
我需要将从另一个数据库test2.db
中的同一个表中选择的数据附加到tableView
中已经显示的数据。
要将一个查询的结果附加到另一个查询,请使用复合SELECT语句:
SELECT * FROM MyTable
UNION ALL
SELECT * FROM MyOtherTable
这要求子选择器具有相同的列数。
如果另一个表在另一个数据库中,则必须将其附加到第一个数据库:
db.exec("ATTACH '/somewhere/else/test2.db' AS test2");
...
query->prepare("SELECT * FROM MyTable UNION ALL SELECT * FROM test2.MyTable");
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- valgrind-hellgrind与泄漏检查的结果不同
- 如何使用默认参数等选择模板专业化
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- 用C++20 fmt限制结果的总大小
- 如何返回一个类的两个对象相加的结果
- 选择要调用的构造函数
- C++选择排序算法中的逻辑错误
- QTreeView幻灯片多选后无法使用单击选择
- 无法获取菜单选择以运行函数.C++
- 如何在 QTextEdit 面板中附加选择查询结果?
- 选择排序算法生成无序结果
- 我如何在众多字符串中选择一个并显示所有可能的结果
- 如何在MFC中导出mysql结果(选择数据)
- PL/SQL可以将选择结果集保存到clob中
- 如何在编译时根据 constexpr 结果选择函数
- 如何使用QSqlQueryModel在QTableView中显示多次选择的结果
- MPI_Reduce选择前k个结果
- 可以在c++中切换大小写,用于对多个选择的结果求和
- 检索用户选择的结果作为调用Qt中外部程序的输入