


添加三行路径:找到自己的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"

添加路径后此时直接编译会出错

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安装的路径为主)

vim -r ~/.bash_profile
export QTDIR=/Users/liwanyu/Qt/5.15.2/clang_64
exportLD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=$QTDIR/bin:$PATH
source ~/.bash_profile
qmake -v
在终端输入qmake -v后如果输出qmake的版本信息就说明配置成功
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)"

进入自己的Qt 下的sql驱动文件(/Users/liwanyu/Qt/5.15.2/Src/qtbase/src/plugins/sqldrivers/)
看是否生成以下4个文件,如果有就说明编译mysql驱动成功:



- #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();
- }

输出结果为上图所示就是成功了
在终端登录自己的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大功告成!!!