Qt5.14编译mysql

第一步:

  • 安装mysql(略)
  • 安装Qt(略)

 

第二步:

打开Qt文件,找到mysql项目

 

 

第三步:

确定编译器,我这里是MSVC2017 64bit,如果是MinGW要用MinGW编译

 

第四步:

  • 修改pro。注释第六行,不然提示找不到mysql;添加以前安装好的MyQSL文件夹下的动态库和头文件,并且添加输出位置(DESTDIR = &&PWD/MySQLDLL)

  •  修改qsqldriverbase.pri。我这里提示找不到configure.pri,所以注释掉第四行,并且添加第六行输入正确configure.pri位置

 

 

第五步:

可以看到多了一个文件夹,将里面的两DLL拷贝出来

PS:我后面用MinGW编译变成这个样子,我鬼使神差吧debug后缀的文件改成了qsqlmysqld.dll,然后可用。。。。。

 

 第六步:

将两DLL放入下图文件夹(放入MinGw在上图)

 

 

第七步:

将MySQL文件夹中的libmysql.dll拷入bin文件夹(MinGW编译的拷入MinGW的bin文件夹)

 

 

 

第八步:

  • 测试,我这里用Navicat连接数据库(myemployees存在)

 

  •  代码连接数据库myemployees并添加表格ttt(乱按的名字,别在意)
 1 #include "mainwindow.h"
 2 #include <QApplication>
 3 #include<QSqlDatabase>
 4 #include<QSqlError>
 5 #include<QSqlQuery>
 6 #include<QDebug>
 7 
 8 int main(int argc, char *argv[])
 9 {
10     QApplication a(argc, argv);
11 
12     QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
13     qDebug()<<QSqlDatabase::drivers();
14 
15     db.setHostName("127.0.0.1");
16     db.setUserName("root");
17     db.setPassword("root");
18     db.setDatabaseName("myemployees");
19 
20     if(!db.open())
21         qDebug()<<"warning!";
22 
23     QSqlQuery query;
24     query.exec("create table ttt(id int primary key auto_increment, name varchar(255), age int, score int);");  //  添加表格
25 
26     MainWindow w;
27     w.show();
28     return a.exec();
29 }

 

没有报错 ,再来看看Navicat增加了数据库ttt

 

 

完成。。。。。

 

posted @ 2021-10-12 23:30  补码  阅读(227)  评论(0编辑  收藏  举报