1.打开Qt Maintenance Tool必须下载Sources
2.下载后打开/Users/liwanyu/Qt/5.15.2/Src/qtbase/src/plugins/sqldrivers/mysql/mysql.pro直接点开
3. 点开mysql.pro文件,注释第六行 QMAKE_USE += mysql
添加三行路径:找到自己的mysql路径和自己的Qt下的 sql驱动路径:
INCLUDEPATH += "/usr/local/mysql-8.1.0-macos13-x86_64/include"
LIBS += "/usr/local/mysql-8.1.0-macos13-x86_64/lib/libmysqlclient.22.dylib"
DESTDIR = "/Users/liwanyu/Qt/5.15.2/Src/qtbase/src/plugins/sqldrivers"
添加路径后此时直接编译会出错
4.打开终端,进入自己的Qt下的mysql文件
Qt下的mysql文件路径:以自己的路径为主:(/Users/liwanyu/Qt/5.15.2/Src/qtbase/src/plugins/sqldrivers/mysql)
输入以下命令:
qmake INCLUDEPATH+=/usr/local/mysql-8.1.0-macos13-x86_64/include LIBS+=/usr/local/mysql-8.1.0-macos13-x86_64/lib/libmysqlclient.22.dylin mysql.pro
(注意以自己电脑上的mysql安装的路径为主)
注意:qmake需要自己配置~/.bash_profile配置方法如下:
(1)在终端打开~/.bash_profile文件:
vim -r ~/.bash_profile
(2)添加以下语句全局环境变量:(是自己的Qt目录)
export QTDIR=/Users/liwanyu/Qt/5.15.2/clang_64
exportLD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=$QTDIR/bin:$PATH
(3)添加完后保存并退出在终端输入以下语句让环境生效
source ~/.bash_profile
(4)验证qmake是否成功
qmake -v
在终端输入qmake -v后如果输出qmake的版本信息就说明配置成功
5. make install编译qmake生成的makefile文件
qmake后就会在mysql文件下生成一个Makefile文件,然后就make install编译Makefile文件:
注意:
如果没有make需要下载homebrew后,然后brew install make
下载homebrew命令:(随机选择一个镜像源即可)
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
6. 检查是否有生成以下4个文件
进入自己的Qt 下的sql驱动文件(/Users/liwanyu/Qt/5.15.2/Src/qtbase/src/plugins/sqldrivers/)
看是否生成以下4个文件,如果有就说明编译mysql驱动成功:
7.创建新工程连接MySQL
(1)在新工程的.pro文件下加sql
(2)在main.cpp写入以下代码
#include "mainwindow.h"
#include <QApplication>
#include "QDebug"
#include <QSqlQuery>
#include <QSql>
#include <QSqlDatabase>
#include <QDebug>
#include <QSqlQuery>
#include <QSqlRecord>
int main(int argc, char** argv){
QApplication a(argc, argv);
qDebug()<<"drives: ";
QStringList drivers = QSqlDatabase::drivers(); //获取现在可用的数据库驱动
foreach(QString driver, drivers)
qDebug() << driver;
QSqlDatabase database = QSqlDatabase::addDatabase("QMYSQL");
database.setHostName("localhost");//127.0.0.1
database.setPort(3306);
database.setUserName("root");
database.setPassword("自己的MySQL密码");
database.setDatabaseName("xuedao"); //这个库是存在的
if (database.open()) {
qDebug() << "连接MySQL数据库成功";
} else {
qDebug() << "连接MySQL数据库失败";
}
return a.exec();
}
(3)编译运行
输出结果为上图所示就是成功了
(4)测试
在终端登录自己的mysql账号进入库xuedao,打开student表,查看表中信息:
在qt测试工程中添加以下代码:
QSqlQuery query(database);
query.exec("insert into student values(3,'小红','女');");
query.exec("insert into student values(4,'张三','男');");
query.exec("insert into student values(5,'赵六','男');");
编译运行Qt工程,然后再在终端查看student表的变化:
发现qt上成功连接mysql,并成功添加数据,到此qt配置mysql大功告成!!!