Qt6 配置MySQL数据库的驱动

我使用的是Qt6.5,然后发现Qt6.5默认没有MySQL的驱动的,然后需要自己安装。结合了诸多博主还有bilibili视频然后成功了,现在写一下配置记录。

参考视频:
Qt6.3.1加载mysql数据库驱动
Qt 6.5.2 一镜到底,只用Qt编译MySQL驱动,不用VS Studio。

首先就是配置前的准备了:
1、Qt(要有Source组件,没有的话自己启动MaintenanceTool.exe 找到对应的source下载一下)。
2、MySQL ServerX.X文件夹下的include和lib文件夹(没有的话建议配置一下MySQL环境,配好就有了)。

我们要做的事:
1、在Qt\版本号\mingw_64\bin目录下添加两个文件,这两个文件分别是:libmysql.dll、libmysql.lib
2、手动生成qsqlmysql.dll和qsqlmysql.debug文件并将其加入\Qt\版本号\mingw_64\plugins\sqldrivers目录下

开始配置:

1、给QT添加libmysql.dll、libmysql.lib文件。

来到你的MySQL ServerX.X文件夹下点开lib文件找到libmysql.dll、libmysql.lib
在这里插入图片描述

将找到的两个文件复制到:Qt\版本号\mingw_64\bin,如下图。
在这里插入图片描述

2、手动生成qsqlmysql.dll和qsqlmysql.debug文件。

2.1、复制MySQL ServerX.X目录下的include和lib到一个你随意创建的文件下面,唯一要求该文件路径不能有空格建议创建在桌面,事后删除。
2.2、修改.cmake.conf文件,该文件路径:\Qt\版本\Src\qtbase\src\plugins\sqldrivers.cmake.conf
往该文件中添加三行代码,(记得\换/,保存退出):

SET(FEATURE_sql_mysql ON)
SET(MySQL_INCLUDE_DIR "xx/xx/xx/include")	这个是你刚才创建文件下include的文件路径
SET(MySQL_LIBRARY "xx/xx/lib/libmysql.lib")	这个是你刚才创建文件下lib文件下libmysql.lib的文件路径

我的如下:
在这里插入图片描述
2.3、右击与.cmake.conf同目录下的CMakeLists.txt选择QT打开(或者用QT打开这个文件)并且选择你的编译套件,点击config

文件打开之后点击小锤子开始编译:
在这里插入图片描述

编译成功之后qsqlmysql.dll和qsqlmysql.debug就生成成功了。

2.4、找到qsqlmysql.dll和qsqlmysql.debug将其放到 \Qt\版本号\mingw_64\plugins\sqldrivers下
2.4.1、找到项目构建目录,如下图所示:
在这里插入图片描述
复制构建目录路径并且打开
选择plugins->sqldrivers,就能看到编译生成的qsqlmysql.dll和qsqlmysql.debug如下图所示:
在这里插入图片描述

然后复制,来到 :\Qt\版本号\mingw_64\plugins\sqldrivers下进行粘贴如下图所示。
在这里插入图片描述
至此环境配置就ok了。

执行代码:
qDebug() << QSqlDatabase::drivers(); //打印Qt支持的数据库驱动
结果如下:
在这里插入图片描述
写代码连接数据库:

    //打印Qt支持的数据库驱动
    qDebug() << QSqlDatabase::drivers();
    //添加Mysql数据库
    QSqlDatabase db =QSqlDatabase::addDatabase ( "QMYSQL") ;//连接数据库
    db.setHostName("127.0.0.1"); //数据库服务器IP
    db.setUserName("root") ; //数据库用户名
    db.setPassword("密码");//密码
    db.setDatabaseName("mysql") ; //使用哪个数据库
    //打开数据库
    if( !db.open())//数据库打开失败
    {
        QMessageBox::warning (this,"错误",db.lastError().text() );
        return;
    }
    qDebug()<<"opne success ";

最后输出:qDebug()<<"opne success "; 显示连接成功。

如果显示MYSQL数据库可用但是运行代码的时候报如下错误:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMARIADB QMYSQL QODBC QPSQL
那么建议还是重新安装一下MySQL吧,本人就是的,一样的操作在别人电脑上可以但是在自己电脑上报错,最终原因貌似是MySQL数据库那边的驱动有问题,这个问题重装一下也是可以解决的。

  • 20
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
QT6中配置MySQL 5.7需要以下步骤: 1. 首先,确保你已经安装了MySQL 5.7数据库,并且数据库服务器正在运行。 2. 打开QT6,创建一个新的QT项目或者打开一个已有的项目。 3. 在项目文件(.pro)中添加MySQL相关的模块。在.pro文件中添加以下代码: ``` QT += sql ``` 4. 在代码中包含MySQL相关的头文件。在你的代码文件中添加以下代码: ``` #include <QSqlDatabase> #include <QSqlQuery> ``` 5. 在代码中配置数据库连接。在你的代码文件中添加以下代码: ``` QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); // 设置数据库主机名 db.setPort(3306); // 设置数据库端口号 db.setDatabaseName("your_database_name"); // 设置数据库名称 db.setUserName("your_username"); // 设置数据库用户名 db.setPassword("your_password"); // 设置数据库密码 if (db.open()) { // 数据库连接成功 // 进行数据库操作 } else { // 数据库连接失败 // 处理连接失败的逻辑 } ``` 请将上述代码中的"your_database_name"替换为你的数据库名称,"your_username"替换为你的数据库用户名,"your_password"替换为你的数据库密码。 6. 进行数据库操作。在连接成功后,你可以使用QSqlQuery类执行SQL查询和操作数据库。例如: ``` QSqlQuery query; query.exec("SELECT * FROM your_table_name"); // 执行查询语句 while (query.next()) { // 处理查询结果 } ``` 请将上述代码中的"your_table_name"替换为你要查询的表名。 以上是在QT6中配置MySQL 5.7的基本步骤。如果你有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值