Qt添加驱动——Qt数据库之添加MySQL驱动插件

Qt数据库之添加MySQL驱动插件(1)

现在可用的数据库驱动只有3种,在Qt中,我们需要自己编译其他数据库驱动的代码,让它们以插件的形式来使用。下面我们就以现在比较流行的MySQL数据库为例,说明一下怎样在Qt Creator中添加数据库驱动插件。在讲述之前,我们先看一下Qt Creator中数据库的插件到底放在哪里。

我们进入Qt Creator的安装目录,然后进入相对应的文件夹下,比方我这里是


  1. D:Qt2010.02.1qtpluginssqldrivers

在这里我们可以看见几个文件,如下图:

<根据名字中的关键字,我们可以判断出这就是ODBC数据库和SQLite数据库的驱动插件。下面我们编译好MySQL数据库驱动后,也会在这里出现相对应的文件。

首先:我们查看怎样安装数据库插件。

我们打开Qt Creator,在帮助中搜索SQL Database Drivers关键字。这里列出了编译Qt支持的所有数据库的驱动的方法。

我们下拉到在windows上编译QMYSQL数据库插件的部分,其内容如下:

这里详细介绍了整个编译的过程,其可以分为以下几步:

第一,下载MySQL的安装程序,在安装时选择定制安装,这时选中安装Libs和Include文件。安装位置可以是C:MySQL 。

注意:安装位置不建议改动,因为下面进行编译的命令中使用了安装路径,如果改动,那么下面也要进行相应改动。

第二,进行编译。我们按照实际情况输入的命令如下。


  1. cd%QTDIR%srcpluginssqldriversmysql
  2. qmake“INCLUDEPATH+=C:MySQLinclude”“LIBS+=C:MySQLliboptlibmysql.lib”mysql.pro
  3. mingw32-make

注意:在上面的命令中qmake之后如果加上“-o Makefile”选项,那么这个插件只能在以release模式编译程序时才能使用,所以我们上面没有加这个选项。

然后:我们按照上面的过程进行相应操作。

1.我们先下载MySQL的安装文件。

我们可以到MySQL的官方主页 http://www.mysql.com 进行下载最新的MySQL的windows版本,现在具体的下载页面地址为:

http://www.mysql.com/downloads/mirror.php?id=383405#mirrors

我们不进行注册,直接点击其下面的


  1. Nothanks,justtakemetothedownloads!

可以在其中选择一个镜像网点进行下载,我使用的是Asia下的最后一个,就是台湾的镜像网点下载的。

下载到的文件名为:mysql-essential-5.1.44-win32 ,其中的win32表明是32位的windows系统,这一点一定要注意。文件大小为40M左右。

当然你也可以到中文网站上进行下载:http://www.mysql.cn/,随便下一个windows的版本就行。

2.安装软件。

我们选择定制安装Custom。

然后选中安装Include文件和Lib文件。

我们将安装路径更改为:C:MySQL 。

最终的界面如下。

安装完成后,我们不进行任何操作,所以将两个选项都取消。

3.进行编译。

我们在桌面上开始菜单中找到Qt Creator的菜单,然后打开Qt Command Prompt。

然后输入第一条命令cd %QTDIR%srcpluginssqldriversmysql 后按回车,运行效果如下。

然后输入第二条命令:


  1. qmake“INCLUDEPATH+=C:MySQLinclude”“LIBS+=C:MySQLliboptlibmysql.lib”mysql.pro

按回车后运行效果如下:

最后输入:mingw32-make ,按下回车后经过几秒的编译,最终效果如下:

整个编译过程中都没有出现错误提示,可以肯定插件已经编译完成了。

4.我们再次进入Qt Creator安装目录下存放数据库驱动插件的文件夹。

我这里是D:Qt2010.02.1qtpluginssqldrivers

其内容如下:

可以看到已经有了和MySQL相关的文件了。

最后:我们编写程序测试插件。

1.我们将上一次的主函数更改如下。


  1. intmain(intargc,char*argv[])
  2. {
  3. QCoreApplicationa(argc,argv);
  4. QSqlDatabasedb=QSqlDatabase::addDatabase(“QMYSQL”);//添加数据库驱动
  5. returna.exec();
  6. }

运行程序,效果如下。

这里提示:QSqlDatabase: QMYSQL driver not loaded 。

2.这时我们需要将C:MySQLbin目录下的libmySQL.dll文件复制到我们Qt Creator安装目录下的qtbin目录中。

如下图:

3.这时再运行程序,就没有提示了。

4.我们再将主函数更改一下,测试这时可用的数据库驱动。


  1. intmain(intargc,char*argv[])
  2. {
  3. QCoreApplicationa(argc,argv);
  4. qDebug()<<“Availabledrivers:”;
  5. QStringListdrivers=QSqlDatabase::drivers();
  6. foreach(QStringdriver,drivers)
  7. qDebug()<<“t”<<driver;
  8. returna.exec();
  9. }

运行效果如下:

可以看到,现在已经有了MySQL的数据库驱动了。

转自:https://blog.csdn.net/dsg333/article/details/9628807

原文地址:https://www.cnblogs.com/liushui-sky/p/9122012.html

时间: 2024-10-11 06:25:21

Qt添加驱动——Qt数据库之添加MySQL驱动插件的相关文章

Qt 5.4.1下编译MySQL驱动,连接MySQL数据库

Qt安装在D:\Qt目录,Qt 5.4.1下连接MySQL数据库,发现会出现以下错误 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL QMYSQL3 QODBC 到D:\Qt\Qt5.4.1\5.4\mingw491_32\plugins\sqldrivers目录下看看,发现是有mysql驱动的 Google了一下,据说是该驱动所满足的依赖性,不满足,需要重

Qt编译mysql驱动

Qt连接MySQL 分类: Qt 数据库 2013-02-27 20:57 1452人阅读 评论(0) 收藏 举报 一般情况下,qt只带了qsqlite4和qodbc两种驱动,如果在安装qt时,你没有添加qt -mysq参数,那么意味着,在你的程序中不能直接使用mysql数据库. 那么你就需要安装这个插件. 感谢jpzjpz提供的详细安装过程! 网址为:http://dev.wo.com.cn/bbs/viewthread.jsp?tid=140945&extra=page%3D1 我这里还是在

Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)

一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载,MySQL官网下载地址:http://www.mysql.com/downloads/installer/ 2.安装时,会提示安装.netFramework4环境,这里提供一个下载链接:http://dldx.csdn.net/fd.PHP?i=537939463366842&s=17682a852

Windows下QT MySQL驱动编译

在Windows环境中使用Qt进行关于MySQL数据库的操作时,会出现如下问题: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC3 QODBC 这是由于MySQL数据库的驱动程序未在Qt下编译造成的(确切的说是未使用mingw32进行编译),解决的方法如下: 1. 自定义安装MySQL,注意安装目录不要有空格,我的目录在 C:\MySQL\MySQL Server 5.6

qt mysql 驱动编译的完整过程(使用qt creator)

一.安装前的准备 1.下载安装程序包,可到MySQL官方网站www.mysql.com下载,如图1-1: 图1-1 下载后的安装文件如图1-2所示: 图1-2 二.安装 1.双击下载的安装文件,本篇博文安装的MySQL版本为5.6.10.1,出现如图1-3所示页面: 图1-3 2.点击“Install MySQL Products”,进入如图1-4页面: 图1-4 3.勾选“I accept the license terms”后,点击“Next”,出现如图1-5所示查找最新产品的更新页面,不喜

windows下编译qt的mysql驱动

windows下编译qt的mysql驱动cd %QTDIR%\src\plugins\sqldrivers\mysqlqmake –o Makefile INCLUDEPATH+="C:\MySQL\MySQL5.1\include" LIBS+="C:\MySQL\MySQL5.1\lib\opt\libmysql.lib" mysql.promingw32-make在C :\Qt\2010.05\qt\plugins\sqldrivers就有mysql驱动了my

编译QT的MySql驱动问题及解决方案

做毕业设计要用到MySql,界面方面想用下QT,顺便学习一下QT的使用.上去就碰到问题,没有MySql的驱动(其实在.\Qt\4.6.0\plugins\sqldrivers目录下有,后来编译完了才发现,这里要崩溃一下~).GOOGLE了一下,翻了翻网页,就开始编译驱动了. 这里使用QT4.6.0版本和VS2008自带的编译器 使用的命令行参数是: qmake –o Makefile INCLUDEPATH+="D:\Program Files\MySQL\MySQL Server 5.1\in

Qt中使用QProcess备份和恢复Mysql数据库

分类: Qt2011-02-18 21:35 1395人阅读 评论(3) 收藏 举报 qtmysql数据库windowspathcmd . 使用Qt做MySQL数据库开发,遇到需要备份.还原数据库的问题. MySQL中没有提供将数据库备份成.sql文件的SQL语句,而是提供了一个mysqldump.exe工具来完成这个功能. 没有SQL语句,QSqlQuery就用不成了,决定改用QProcess实现. . 但是在Qt中使用QProcess::execute()方法怎样都导不出数据来, 更郁闷的是

MySql 用户管理 中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):

MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234")); 如果报错解决方法:https://i.c