当前位置:   article > 正文

QT-5.12: QSqlDatabase: QMYSQL driver not loaded 错误及解决方案

qsqldatabase: qmysql driver not loaded

错误现象及原因:

(1)qt SQL模块已默认不编译mysql驱动,导致mysql驱动缺失,错误提示如下(可用数数据库驱动不含mysql驱动,执行方法一和二);

 (2)已编译mysql驱动扩展并加入到相应目录,但仍无法mysql加载驱动,错误信息如下(qt提示数据库驱动可用,但无法加载mysql驱动,直接执行方法二);

解决方法:

  一、 编译qt中的mysql数据库驱动扩展,并将编译后的扩展加入qt数据库驱动扩展目录;

step 0: 下载mysql数据库的C驱动,由于MySQL最新版本不单独提供C驱动,所以需要完整安装mysql server;

step 1: 使用qt维护工具下载qt源码,使用qt creator 打开 mysql驱动扩展工程,驱路径 <QT_HOME>\Src\qtbase\src\plugins\sqldrivers\mysql\mysql.pro;

改动: 注释掉第6行,添加第13、15、16行;(根据mysql驱动的实际路径修改)

 step 3:  修改qsqldriverbase.pri文件,注释掉第4行,添加第5行;

 step 5: 构建及安装: 将编译产生的dll等文件(如图1所示)复制到qt sql驱动扩展目录(如图2所示);

编译产生的库文件
图1. qt的mysql驱动库及调试文件

图2. qt sqldrivers 扩展路径

 step 6: 见二;

二、将下面两行 mysql 客户端库路径加入到PATH环境变量(可以修改系统环境变量或者通过qt creator项目添加环境变量);

 备注: 涉及的文件较多,新手通常找不到相关文件路径;推荐使用 everything 定位相关文件; 有什么问题欢迎留言交流。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号