• MACOS系统Qt配置MySQL


    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写入以下代码

    1. #include "mainwindow.h"
    2. #include <QApplication>
    3. #include "QDebug"
    4. #include <QSqlQuery>
    5. #include <QSql>
    6. #include <QSqlDatabase>
    7. #include <QDebug>
    8. #include <QSqlQuery>
    9. #include <QSqlRecord>
    10. int main(int argc, char** argv){
    11. QApplication a(argc, argv);
    12. qDebug()<<"drives: ";
    13. QStringList drivers = QSqlDatabase::drivers(); //获取现在可用的数据库驱动
    14. foreach(QString driver, drivers)
    15. qDebug() << driver;
    16. QSqlDatabase database = QSqlDatabase::addDatabase("QMYSQL");
    17. database.setHostName("localhost");//127.0.0.1
    18. database.setPort(3306);
    19. database.setUserName("root");
    20. database.setPassword("自己的MySQL密码");
    21. database.setDatabaseName("xuedao"); //这个库是存在的
    22. if (database.open()) {
    23. qDebug() << "连接MySQL数据库成功";
    24. } else {
    25. qDebug() << "连接MySQL数据库失败";
    26. }
    27. return a.exec();
    28. }

    (3)编译运行

    输出结果为上图所示就是成功了

    (4)测试

    在终端登录自己的MySQL账号进入库xuedao,打开student表,查看表中信息:

     

    Qt测试工程中添加以下代码:

    1.     QSqlQuery query(database);
    2. query.exec("insert into student values(3,'小红','女');");
    3.     query.exec("insert into student values(4,'张三','男');");
    4.     query.exec("insert into student values(5,'赵六','男');");

    编译运行Qt工程,然后再在终端查看student表的变化:

     

    发现Qt上成功连接MySQL,并成功添加数据,到此Qt配置MySQL大功告成!!! 

  • 相关阅读:
    JS深拷贝处理日期、正则以及循环引用问题
    【重拾C语言】三、分支程序设计(双分支和单分支程序设计、逻辑判断、多分支程序设计、枚举类型表示;典型例题:判断闰年和求一元二次方程根)
    Swagger2的配置
    fpm模式下读取到is_cli为何为true
    Canny边缘检测数学原理及Python代码实现
    ORB-SLAM2解读MapPointCulling
    李超线段树
    51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频)
    Go语言开发环境安装,hello world!
    linux gdb调试
  • 原文地址:https://blog.csdn.net/weixin_44954230/article/details/133343618