Qt下连接mysql
由于项目的需要,要用qt连接mysql数据库。折腾了老半天终于搞出来了,感觉十分的欣慰。
操作系统win7旗舰版 sp1.
下载过程:
1:下载mysql
我下载的版本是5.6.10 官方正式版(for windows 32位) 下载地址如下所示:
2:下载qt
我下载的版本是 qt-win-opensource-4.8.2-vs2010.exe
3:下载vs2010的qt插件
也是图个方便,在vs上能够开发qt程序,我下载的版本是:qt-vs-addin-1.1.11-opensource.exe
安装过程:
1:安装mysql
安装mysql,我选择的是全部安装,貌似是因为这样可以产生mysql相应的接口文件。
找到mysql的安装路径,可以看到其中的include和lib文件,这两个文件是后面生成mysql驱动所必须依赖的文件。
为了简化路径和方便后面的安装,复制include和lib文件到C:\Qtmysql
2:安装qt-win-opensource-4.8.2-vs2010.exe
这个按照安装向导直接一步一步安装就可以了,我选择的安装路径是:C:\Qt\4.8.2。安装完成后,可以发现C:\Qt\4.8.2\src\plugins\sqldrivers的路径下面有一个readme的文件,打开有这样一段话:
Please note that the DB2, Oracle and TDS client drivers are not distributed with the Qt Open Source Editions.
This is because the client libraries are distributed under a license which is not compatible with the GPL license.
大致意思就是DB2,Oracle,TDS的数据库客户端驱动在qt的开源版本中是没有发布的,原因是这些客户端库的发行许可证和GPL许可证不兼容。
mysql是已经被Oracle 收购的,所以mysql的驱动需要我们自己来编译。接下来就进入最核心的编译阶段。
首先打开qt的command prompt,这个有点类似cmd,打开方式如下所示:
然后定位到:
接着执行qmake命令:
执行完毕后执行nmake命令
执行结果如下图所示:
还有很长一段没有贴出来。命令执行完毕后,可以发现在原来的文件夹下:
C:\Qt\4.8.2\src\plugins\sqldrivers\mysql多了好几个文件,其中打开debug文件可以发现有:
网上很多说生成了4个文件,不过我这里只有libmysql.dll和libmysql.lib这两个文件,将这两个文件复制到:C:\Qt\4.8.2\plugins\sqldrivers里面,运行测试程序:
qDebug() << "Available drivers:";
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() << "\t "<< driver;
qDebug() << "End";
结果还是没有出现mysql的驱动, 这个时候把mysql安装文件下的lib中的libmysql.dll复制到C:\Qt\4.8.2\bin,这个时候再运行测试程序:
从中可以发现出现了mysql的驱动程序。
本文档为【qt 编译mysql驱动并连接mysql】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。