C++ QT5中的TableView不显示MYSQL数据,只显示空行
我通过屏幕截图向您展示我的问题。这对我来说似乎更容易 在我的程序中,我的表是空的,但是它有适当数量的列,如果我在我的sql工作台中添加更多的列,它将获得更多的行,但是其中没有显示任何内容。 以下是我的源代码:C++ QT5中的TableView不显示MYSQL数据,只显示空行,c++,mysql,qt,tableview,qt5,C++,Mysql,Qt,Tableview,Qt5,我通过屏幕截图向您展示我的问题。这对我来说似乎更容易 在我的程序中,我的表是空的,但是它有适当数量的列,如果我在我的sql工作台中添加更多的列,它将获得更多的行,但是其中没有显示任何内容。 以下是我的源代码: void adminUserData::on_pushButton_Load_clicked() { // This Object is for connecting to my Database (it works). Datenbank db; db.connD
void adminUserData::on_pushButton_Load_clicked()
{
// This Object is for connecting to my Database (it works).
Datenbank db;
db.connData();
QSqlQueryModel* model = new QSqlQueryModel();
QSqlQuery* qry = new QSqlQuery(db.db);
qry->prepare("SELECT * FROM worker");
qry->exec();
model->setQuery(*qry);
ui->tableView->setModel(modal);
qDebug() << model->rowCount();
db.discData();
}
我不知道怎么了。以下是工作台中我的数据库的屏幕截图:
谢谢你们帮助我。
致以最良好的祝愿我认为由于我们没有Datenbank源代码,问题在于声明Datenbank db;在堆栈上,当函数存在时,数据库关闭,导致查询和模型无效。要解决此问题,请使用new在堆上声明它,或将其用作类的成员 不应该在ui->tableView->setmodelmodel;是ui->tableView->setModelmodel 问题在于,你还泄露了模型和查询。如果你对问题有疑问,请赢得一些声誉和评论/投票-