windows 下 qt 连接 mysql 数据库

Qt安装在D:\Qt目录,Qt 5.4.1下连接MySQL数据库,发现会出现以下错误

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. QSqlDatabase: QMYSQL driver not loaded  
  2. QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL QMYSQL3 QODBC  
到D:\Qt\Qt5.4.1\5.4\mingw491_32\plugins\sqldrivers目录下看看,发现是有mysql驱动的


Google了一下,据说是该驱动所满足的依赖性,不满足,需要重新编译,那就重新编译吧。

到mysql官网下载5.6版的32位zip文件,解压缩到D:\MySQL-Win32(一定要是32位的mysql,否则编译不通过)。

解压Qt5.4.1的zip源码到G:\Qt\qt-everywhere-opensource-src-5.4.1。

打开MinGW的命令行工具


切换到Qt源码目录

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. cd G:\Qt\qt-everywhere-opensource-src-5.4.1\qtbase\src\plugins\sqldrivers\mysql\  

生成makefile

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. qmake "INCLUDEPATH+=D:\MySQL-Win32\include" "LIBS+=D:\MySQL-Win32\lib\libmysql.lib" -o Makefile mysql.pro  
编译

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. mingw32-make  

成功编译后将会在G:\Qt\qt-everywhere-opensource-src-5.4.1\qtbase\plugins\sqldrivers生成mysql的驱动文件。


复制qsqlmysql.dll和qsqlmysqld.dll到D:\Qt\Qt5.4.1\5.4\mingw491_32\plugins\sqldrivers替换原来的文件。

再把D:\MySQL-Win32\lib\libmysql.dll复制到C:\Windows目录下。


这样Qt就可以连接MySQL数据库了。

猜你喜欢

转载自blog.csdn.net/abf1234444/article/details/50425086