Qt如何编译MySQL数据库驱动

 更新时间:2024年12月18日 12:00:36   作者:SabrinaW711  
这篇文章主要介绍了Qt如何编译MySQL数据库驱动,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

Qt编译MySQL数据库驱动

(1)先找到MySQL安装路径以及Qt安装路径
C:\Program Files\MySQL\MySQL Server 8.0
D:\qt\5.12.12
(2)在D:\qt\5.12.12\Src\qtbase\src\plugins\sqldrivers\mysql下用QtCreator打开mysql.pro

(3)在mysql.pro文件里,注释QMAKE_USE += mysql,并添加三条语句

(4)在qsqldriverbase.pri文件,注释并添加一条新的语句

(5)点击锤子进行Build
(6)在D:\qt\5.12.12\Src\qtbase\src\plugins\sqldrivers\mysql\myLib文件夹,把qsqlmysql.dll和qsqlmysqld.dll(这两个就是qt连接mysql数据库的桥梁了)放进D:\qt\5.12.12\msvc2017_64\plugins\sqldrivers文件夹里面。

(7)把C:\Program Files\MySQL\MySQL Server 8.0\lib里面的libmysql.dll放到D:\qt\5.12.12\msvc2017_64\bin文件夹里面

测试程序

#include <QCoreApplication>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QDebug>
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    // 创建数据库连接
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");                           // MySQL 主机名
    db.setDatabaseName("requirementscapturesystem");       // 数据库名
    db.setUserName("root");                                // 用户名
    db.setPassword("123456");                              // 密码
    // 打开数据库连接
    if (!db.open()) {
        qCritical() << "Failed to connect to database:" << db.lastError().text();
        return -1;
    }else{
        qDebug() << "Success to link!";
    }
    return a.exec();
}

到此这篇关于Qt编译MySQL数据库驱动的文章就介绍到这了,更多相关Qt编译MySQL内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL在Windows中net start mysql 启动MySQL服务报错 发生系统错误解决方案

    MySQL在Windows中net start mysql 启动MySQL服务报错 发生系统错误解决方案

    这篇文章主要介绍了MySQL在Windows中net start mysql 启动MySQL服务报错 发生系统错误解决方案,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • MySql数据库基础知识点总结

    MySql数据库基础知识点总结

    这篇文章主要介绍了MySql数据库基础知识点,总结整理了mysql数据库基本创建、查看、选择、删除以及数据类型相关操作技巧,需要的朋友可以参考下
    2020-06-06
  • MySQL中的锁和MVCC机制解读

    MySQL中的锁和MVCC机制解读

    MySQL事务、锁和MVCC机制是确保数据库操作原子性、一致性和隔离性的关键,事务必须遵循ACID原则,锁的类型包括表级锁、行级锁和意向锁,MVCC通过非锁定读和锁定读实现并发控制,幻读和死锁是并发事务中常见的问题,可以通过预防策略和优化技巧解决
    2025-01-01
  • MySQL不使用order by实现排名的三种思路总结

    MySQL不使用order by实现排名的三种思路总结

    ORDER BY语句用于根据指定的列对结果集进行排序,在日常开发中也经常会用到,但下面这篇文章主要给大家介绍了关于MySQL不使用order by实现排名的三种思路,需要的朋友可以参考下
    2021-06-06
  • Mysql数据库手动及定时备份步骤

    Mysql数据库手动及定时备份步骤

    最近刚好用到了数据库备份,想着还有个别实习或者刚工作的小伙伴一个drop不小心删表、删库,心内慌得一批不知道该怎么办,就打算跑路了,学会这个小技巧就不用跑路了
    2021-11-11
  • mysql闪回工具binlog2sql安装配置教程详解

    mysql闪回工具binlog2sql安装配置教程详解

    这篇文章主要介绍了mysql闪回工具binlog2sql安装配置详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • MySQL批量去掉某个字段中的空格

    MySQL批量去掉某个字段中的空格

    这篇文章主要介绍了MySQL批量去掉某个字段中的空格的简单方法,具有一定参考价值,给大家分享下,一起参考,交流。
    2017-10-10
  • Mysql临时变量的具体使用

    Mysql临时变量的具体使用

    本文主要介绍了Mysql临时变量的具体使用,临时变量有分为用户变量和会话变量,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • MySQL自定义函数及触发器

    MySQL自定义函数及触发器

    这篇文章主要介绍了MySQL自定义函数及触发器,自定义函数是一种对MySQL扩展的途径,其用法与内置的函数相同,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • MySQL 8.0新特性之集合操作符INTERSECT和EXCEPT

    MySQL 8.0新特性之集合操作符INTERSECT和EXCEPT

    MySQL8.0.31版本开始支持了INTERSECT(交集)和EXCEPT(差集)运算,INTERSECT返回两个结果集中都包含的行,EXCEPT返回左侧结果集存在,右侧不存在的行,这篇文章主要给大家介绍了关于MySQL 8.0新特性之集合操作符INTERSECT和EXCEPT的相关资料,需要的朋友可以参考下
    2022-10-10

最新评论