QT4/5与mysql的连接驱动问题

来源:互联网 发布:什么软件可以拼图 编辑:程序博客网 时间:2024/05/17 01:03

转于skying

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

 copy
  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]copy
  1. cd G:\Qt\qt-everywhere-opensource-src-5.4.1\qtbase\src\plugins\sqldrivers\mysql\  

生成makefile

[html] copy
  1. qmake "INCLUDEPATH+=D:\MySQL-Win32\include" "LIBS+=D:\MySQL-Win32\lib\libmysql.lib" -o Makefile mysql.pro  
编译

[html] copy
  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数据库了。


另外:mysql与qt应该同为32/64位,并且在连接时,mysql需要为打开状态。

0 0
原创粉丝点击