当前位置:   article > 正文

QT5中使用Mysql碰到的问题_qt mysql because it doesn't meet its condition aft

qt mysql because it doesn't meet its condition after reconfiguration
  1. QSqlQuery::exec: database not open

在使用QSqlQuery和QSqlQueryModel时都碰到了这个问题,只需分别关联到QSqlDatabase即可。

  1. QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL", "localhost");
  2. // 设置相关参数
  3. db.setDatabaseName("irisdb"); // 需要与数据库中的一致
  4. db.setHostName("localhost"); // 主机名(地址)
  5. db.setPort(3306); // 端口
  6. db.setPassword("root");
  7. db.setUserName("root");
  8. db.open();
  9. QSqlQueryModel *model = new QSqlQueryModel(this);
  10. QSqlQuery que(db);//关联db
  11. que.exec("insert into student values(0, 'first')");
  12. model->setQuery("select * from student",db);//关联db

2.在一个项目中同时多次使用

 QSqlDatabase::addDatabase("QMYSQL", "localhost");
导致先绑定的model不能显示数据

一个项目最好就使用一个共享的db

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/699853
推荐阅读
相关标签
  

闽ICP备14008679号