qt,我在一个界面建立数据库,建了一个表,想在另一个界面调用,去查看数据。
/*数据库*/
db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("guanliyuan.db");
db.open();
query = new QSqlQuery();
query->exec("create table userinfo(username,password)");
/*显示读数据*/
qmodel = new QSqlQueryModel;
qmodel->setQuery("select * from userinfo"); //设置查询
ui->tableView->setModel(qmodel);
qmodel->setHeaderData(0,Qt::Horizontal,"账号");
qmodel->setHeaderData(1,Qt::Horizontal,"密码");
把创建数据库的参数保存起来,传到其他页面,然后类似的代码做查询操作就可以了。
我补充一下,你这里是创建一个数据库连接而已,去连接已有的数据库,open成功以后就可以对数据库操作了,当你执行query->exec后,假如你的query包含建表和插入,此时你要读的数据在数据库中,就不涉及界面的交互了,就直接在你要展示的界面读取数据库就行了。
当然你的界面之间有交互的话,一般是通过emit signal,自定义带参数的信号发过去,再用connect绑定。
QSqlQuery query;
query.exec("select * from userinfo");
while (query.next())
{
//qDebug() << query.value(0).toInt() << query.value(1).toString() << query.value(2).toString();
//上面是例子,下面这应该是你表的两个字段,用户名和密码
QString name = query.value(0).toString();
QString pwd = query.value(1).toString();
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y
希望对您有帮助:https://blog.csdn.net/it_xiangqiang/category_10794527.html