QT+MySQL程序打包发布后提示driver not loaded driver not loaded的终极解决办法

QT+MySQL程序打包发布后提示driver not loaded driver not loaded的终极解决办法

  • 错误信息
  • 解决方法

错误信息

1.QSqlDatabase: MYSQL driver not loaded
2.QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

如果错误信息只有第一条说明没有找到驱动,如果两条错误信息都出现,那么说明程序是可以找到驱动的,但是驱动加载不成功。

解决方法

1.需要将QT的数据库插件拷贝到exe文件的同级目录(包括sqldrivers文件夹),数据库插件位于Qt安装路径下plugins\sqldrivers\qsqlmysqld.dll(Debug版) qsqlmysql.dll(Release版)。
2.将MySQL安装路径下lib(如:C:\Program Files\MySQL\MySQL Server 8.0\lib)文件夹中的libmysql.dll文件拷贝到exe文件的同级目录。
3.将MySQL安装路径下bin(如:C:\Program Files\MySQL\MySQL Server 8.0\bin)里面的所有DLL文件拷贝到exe文件的同级目录。
我的安装路径下Dll如下图:
QT+MySQL程序打包发布后提示driver not loaded driver not loaded的终极解决办法_第1张图片
注:不同的MySQL可能Dll文件有所不同。

通过以上3步解决开发机能够正常加载数据库Driver,但是发布安装到其他机器上无法加载数据库Driver的问题。

你可能感兴趣的:(QT)