当前位置: 首页 > news >正文

Qt添加MySql数据库驱动

文章目录

    • 一. 安装MySql
    • 二.编译mysql动态链接库

Qt版本:5.14.2
MySql版本:8.0.41

一. 安装MySql

参考这里进行安装:https://blog.csdn.net/qq_30150579/article/details/146042922

  1. 将mysql安装目录里的bin,include和lib拷贝出来进行单独使用
    在这里插入图片描述
  2. 打开mysql的workbench(软件菜单栏里找)
    在这里插入图片描述
  3. 新建一个数据库
    在这里插入图片描述
  4. 新建一个表
    在这里插入图片描述

二.编译mysql动态链接库

  1. 进入自己安装的Qt的对应安装目录,qt打开mysql.pro
    在这里插入图片描述

  2. mysql.pro进行如下修改,然后进行构建
    在这里插入图片描述

    TARGET = qsqlmysql
    
    HEADERS += $$PWD/qsql_mysql_p.h
    SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp
    
    #QMAKE_USE += mysql
    
    OTHER_FILES += mysql.json
    
    PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
    include(../qsqldriverbase.pri)
    
    #mysql的include路径
    INCLUDEPATH += D:/mysql/include
    
    #mysql的lib路径
    LIBS += D:/mysql/lib/libmysql.lib
    
    DESTDIR = ../mysql/myLib/
    
  3. 查看生成的文件在哪里
    在这里插入图片描述

  4. 将对应文件拷贝到Qt对应编译器的数据库插件中
    在这里插入图片描述

  5. 将mysql的动态链接库拷贝到Qt对应编译器的bin目录下
    在这里插入图片描述

  6. qt创建以下程序,进行测试

    #include "mainwindow.h"
    #include "./ui_mainwindow.h"
    
    #include <QSqlDatabase>
    #include <QSqlQuery>
    #include <QSqlError>
    #include <QDebug>
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
        , ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    
        QStringList drivers = QSqlDatabase::drivers();
        for (const QString& driver : drivers) {
            qDebug() << driver;
        }
    
        QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
        db.setHostName("localhost");  // 设置数据库服务器的IP地址
        db.setPort(3306);
        db.setDatabaseName("mydatabase");  // 设置数据库名
        db.setUserName("root");     // 设置用户名
        db.setPassword("123456");     // 设置密码
    
        if (!db.open()) {
            qDebug() << "Failed to connect:" << db.lastError().text();
        } else {
            qDebug() << "Connected successfully!";
        }
    
        QStringList tables = db.tables();
        qDebug() << "表张数:" << db.tables().size();
        foreach(QString table, tables)
        {
            qDebug() <<table;
        }
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    
  7. 输出如下,则说明Qt中的MySQL驱动安装成功
    在这里插入图片描述

相关文章:

  • PromQL计算gateway指标增量最佳实践及常见问题答疑
  • vue3基本功
  • Unity 小功能
  • CMD命令大全
  • 算阶,jdk和idea的安装
  • 最近逐笔成交
  • 【折线图 Line】——21
  • 数据开发岗位: 面试测试题(2025年)
  • 信息系统项目管理师--整合管理
  • C++ 数据结构详解及学习规划
  • istio入门到精通-2
  • 16-torch.autograd.Function说明
  • 【PostgreSQL】如何免密使用PostgreSQL数据库内置工具
  • 002-Boost共享内存的使用
  • C语言-函数指针与指针函数的区别
  • ChatGPT结合DeepSeek新式文献获取+文献拆解流程分享!学术论文轻松上岸!
  • SCI1区TOP:自适应学习粒子群算法SLPSO,深度解析+性能实测
  • 【孟德尔随机化】PhenoScanner不能用的,替代方法
  • PPT 技能:巧用 “节” 功能,让演示文稿更有序
  • 使用 Arduino 的 WiFi 控制机器人
  • 倒计时1天:走进“中国荔乡”茂名,探寻农交文旅商融合发展新模式
  • 山东发布高温橙警:预计19日至21日局地可达40℃
  • 持续降雨存在落石风险,贵州黄果树景区水帘洞将封闭至6月初
  • 发射后失联,印度地球观测卫星发射任务宣告失败
  • 广西鹿寨一水文站“倒刺扶手”存安全隐患,官方通报处理情况
  • 马上评|文玩字画竞拍轻松赚差价?严防这类新型传销