qt连接mysqlde配置

原创 2013年12月05日 20:17:03

此文档针对windows下Qt Creator + Qt SDK用户,开发环境配置参见本人其他博文

 

qt由于授权许可的限制,Qt的开源版本没有提供所有数据库的驱动程序。免费下载的中只含有QSQLITE也就是SQLite的驱动程序,要想与mysql或oracle等连接需要自己编译其驱动。
    由于种种问题,经历各种重装,各种失败,本人用了两天才成功用qt连接上了mysql数据库。(看网上其他教程都是分分钟搞定  -_-!!)在这里也写一下自己的经历。
    下边开始正文:
    一.下载mysql http://dev.mysql.com/downloads/ 目前最新版本5.5。
    二.安装mysql  安装时不能选择Typical型,这样会缺少库文件(include和lib文件夹)。啥都不管直接选择FUll型。
    三.将mysql安装目录下的include和lib两个文件夹拷贝到qt\4.7.4\src\plugins\sqldrivers\mysql下。可以自己新建一个目录如mysqllib。
      四.修改mysql.pro文件,在第二行添加如下内容
          INCLUDEPATH += "./mysqllib/include"
    LIBS+= "./mysqllib/lib/libmysql.lib"
    五.将QT的bin目录和mingw的目录都添加到环境变量的path中。
    六.运行qt 4.7.4 Command Prompt 输入以下命令(路径自己注意修改)
        cd qt\4.7.4\src\plugins\sqldrivers\mysql
        qmake
        mingw32-make release
        mingw32-make debug
       执行qmake后没有返回结果,只是在mysql目录下生成了debug和release的makefile文件Makefile.Debug和Makefile.Release。
       全部执行完后,将release下的libqsqlmysql4.a,qsqlmysql4.dll和debug下的libqsqlmysqld4.a,libqsqlmysqld4.dll 拷贝至
       QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers  
    目录下
   七.将mysql的库文件libmysql.dll拷贝到QtSDK\Desktop\Qt\4.7.4\mingw\bin 目录下

接下来运行一个例子看驱动是否装好:
新建一个qt gui 控制台项目SQLtest
在SQLtest.pro中加入QT  +=sql
接着修改main.cpp如下

#include <QtCore/QCoreApplication>

#include <QtSql>int main(int argc, char *argv[]){    

QCoreApplication a(argc, argv);    

qDebug() << "Available drivers:";      

QStringList drivers = QSqlDatabase::drivers();      

foreach(QString driver, drivers)           qDebug() << "\t "<< driver;    

qDebug() << "End";    

return a.exec();

}

执行程序输出为:

Available drivers:        

"QSQLITE"        

"QMYSQL3"        

"QMYSQL"

End

其中有"QMYSQL"则表示编译mysql的驱动成功了!!

QT连接Oracle数据库

这两天一直困扰于Qt连接数据库的
  • achenwenping
  • achenwenping
  • 2014年06月19日 17:13
  • 874

Qt5.2 for Android 配置及部署到手机运行

软件准备: 1.QT5.2  for android (windows)版。   下载地址:https://qt-project.org/downloads     找到   ...
  • syrchina
  • syrchina
  • 2013年12月15日 17:45
  • 15533

Qt4.8.7连接MySql数据库(windows环境)

1.软件准备 qt-opensource-windows-x86-mingw482-4.8.7.exe Qt4的最后一个版本,bug应该是最少的,其他版本也类似。官方下载链接(329M)...
  • yuyu414
  • yuyu414
  • 2016年04月01日 15:48
  • 1588

qt如何通过ODBC连接mysql数据库

1. 首先需要建立服务器,其中存在一个数据库 我的方法是安装xampp,之后运行xampp,start    apache和mysql之后效果图如下。如果在start失败,可能的原因的你的端口被其他...
  • zhengrenjunzi153
  • zhengrenjunzi153
  • 2016年11月05日 10:22
  • 873

qt连接oracle数据库经验总结

利用qt连接oracle数据库实战经验: 之前公司用qt开发的产品中,使用的数据库为mysql和sql server,并未用qt连接过 oracle数据库。因此,只能通过百度查资料的方式解...
  • u011505792
  • u011505792
  • 2017年06月23日 16:29
  • 582

Qt+VS2010配置及开发环境搭建

本文转载自 Qt简介以及如何配置QT使用VS2010开发 Qt是神马东西? Qt – 一个跨平台应用程序和UI开发框架 它包括跨平台类库、集成开发工具和跨平台 IDE。使用 Qt 您只需一次...
  • Karry_
  • Karry_
  • 2015年10月27日 17:24
  • 2244

在Qt Creator中配置QNX设备

Configuring a QNX device in Qt Creator You must configure a QNX device to tell Qt Creator which...
  • liukang325
  • liukang325
  • 2015年09月21日 12:06
  • 1517

Qt在Linux环境下如何进行动态链接(i.e. Caffe+Qt)

利用Qt进行c++的GUI开发,在我看来是所有GUI方案中,最有吸引力的一个。 一方面,Qt的API封装的特别好,很接近其他“先进”的UI框架,就算是进行大规模的程序开发,Qt也能够胜任。 另一方...
  • hyichao_csdn
  • hyichao_csdn
  • 2015年11月12日 16:40
  • 2716

Qt 嵌入式 利用wpa_supplicant编写WIFI、有线网络管理器

HNEthManager嵌入式linux系统中没有内置自动化程度高的管理程序,这个程序就完成根据有线插拔来判断是否启用无线的功能。HNEthManagerhnethmanager.h#ifndef H...
  • Dr_Abel
  • Dr_Abel
  • 2016年05月07日 00:09
  • 4628

qt5 使用oracle简单实例

新手学习qt
  • u014491932
  • u014491932
  • 2017年05月01日 20:13
  • 637
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:qt连接mysqlde配置
举报原因:
原因补充:

(最多只允许输入30个字)