当前位置:   article > 正文

Qt5.14.1连接MySql8.0.25数据库_qt5.14 对应的mysql版本

qt5.14 对应的mysql版本

注意.确保Qt和MySql的版本都是32位,或者64位,否则极大概率会出现编译错误。

1、编译mysql驱动(用Qt打开mysql.pro文件)

第6行左右,在QMAKE_USE += mysql 前面加上# ,变为#QMAKE_USE += mysql。

win32:LIBS += -LD:/mysql-8.0.25-winx64/lib -llibmysql(自己mysql相应文件的路径)

INCLUDEPATH += D:/mysql-8.0.25-winx64/include

DEPENDPATH += D:/mysql-8.0.25-winx64/include

2、拷贝文件

编译完成后会在Qt同文件下生成Plugins文件夹

将生成qsqlmysql.dll和qsqlmysqld.dll 拷贝至Qt所对应mingw_64的sqldrivers。

拷贝mysql的动态库(mysql中有) 将 mysql/lib 中的 libmysql.dll(动态库)拷贝至Qt所对应编译器的bin目录下。

3、连接MySql

新建一个Qt项目 记得选择mingw_64的编译器,会在新建时提示你选。其他默认就好在.pro文件头部添加 QT += sql。

在main.cpp中添加如下代码

  1. #include "mainwindow.h"
  2. #include <QApplication>
  3. #include<QSqlDatabase>
  4. #include<QSqlError>
  5. #include<QSqlQuery>
  6. #include<QDebug>
  7. bool createConnection()
  8. {
  9. QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
  10. db.setHostName("localhost");
  11. db.setDatabaseName("mydb20");
  12. db.setUserName("root");
  13. db.setPassword("5635947");
  14. bool isopen=db.open();
  15. if(isopen)
  16. {
  17. qDebug()<<"数据库连接成功";
  18. }
  19. else
  20. {
  21. qDebug()<<"数据库连接失败";
  22. }

Ctrl + r 运行,成功后在下方的结果输出框中有小字提示“数据库连接成功”。

4.创建学生数据库

5.查询数据库
  1. //查询学生数据库
  2. QSqlQuery sq("select * from student");
  3. qDebug()<<"id name gender address";
  4. while(sq.next())
  5. {
  6. //字符串转换
  7. int sid=sq.value(0).toInt();
  8. QString strname=sq.value(1).toString();
  9. QString strgender=sq.value(2).toString();
  10. QString straddress=sq.value(3).toString();
  11. //输出
  12. qDebug()<<QString("%1 %2 %3 %4").arg(sid).arg(strname).arg(strgender).arg(straddress);
  13. }
  14. //关闭数据库
  15. db.close();

查询结果

总结:

1、Qt中没有自带的mysql数据库插件 qsqlmysql.dl 与 qsqlmysql.dlld,需要去mysql.pro文件中自行编译。
2、需要把mysql动态库拷贝至Qt编译器的bin目录下。

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

闽ICP备14008679号