您的位置:首页 > 编程语言 > Qt开发

Qt5.5连接mysql数据库提示QMYSQL driver not loaded

2016-01-28 16:00 585 查看
Qt5.5.1编译mysql zip数据库驱动

转载自:http://blog.sina.com.cn/s/blog_032253000102v1m0.html

本文针对5.5.1版本更新了下文件版本,和原文方法没区别

本机环境:

    Win7x64

    Qt5.5.1源码        (编译mysql)

    mysql-5.7.10 zip源码    (32位)

    Qtcreator 3.4.2     (集成开发环境)

 

1.  第一次用数据库mysql时估计都出现这种问题,QMYSQL driver not loaded,查看

Qt creator安装目录D:\Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers得知,qt 5.5.0是自带mysql驱动的,但是还有问题。只能自己重新编译。

 

2.  软件工具:

1) Qt5.5.1源码:qt-everywhere-enterprise-src-5.5.1.zip

地址:https://account.qt.io/downloads需要注册下载

2) mysql-5.7.10:  mysql-5.7.10-win32.zip(32位)

mysql官网提供两种形式,msi和zip,一定下载32位的zip!

(本人使用mysql- 5.7.10.msi选择full安装生成的include和lib文件进行mysql驱动编译会报错,提示不存在binary_log_types.h,将32位zip中的此文件复制到相同目录,重新编译还会出现其他很多奇怪错误,不推荐。)

 

3) Qtcreator:

qt-opensource-windows-x86-mingw492-5.5.0.exe(集成qt 5.5.0和mingw32)

 

3.  解压到自定义目录
本机解压qt-everywhere-enterprise-src-5.1.1.zip到 D:\qt-everywhere-enterprise-src-5.5.1
解压mysql-5.7.10-win32.zip到D:\ MySQL-Win32(不用配置mysql就行)
 
4.  切换到qt源码目录,打开如图所示的mingw32命令提示符,
                          


 执行
cd D:\qt-everywhere-enterprise-src-5.5.1\base\src\plugins\sqldrivers\mysql

 
执行
qmake "INCLUDEPATH+=D:\MySQL-Win32\include" “LIBS+=D:\MySQL-Win32\lib\libmysql.lib" mysql.pro
(原文有用-o Makefile,如果加上“-o Makefile”,插件只能在以release 模式编译程序时才能使用,所以没加)
 
执行mingw32-make
 
编译成功后将会在D: \qt-everywhere-enterprise-src-5.5.1\qtbase\plugins\sqldrivers生成mysql的驱动文件.
                       


复制qsqlmysql.dll和qsqlmysqld.dll到

D:\ Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers(Qt creator的安装目录)替换原来的文件。

再把D:\mysql-5.7.10-win32\lib\libmysql.dll复制到C:\Windows目录下。

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: