一、 下载mysql C链接库

地址:http://dev.mysql.com/downloads/

根据当前系统选择下载:

二、 安装下载好的mysql驱动文件

注意,一定要安装在不含有中文、空格以及特出符号的文件、路径中,为了方面起见,我直接安装在了 E:\MySQL 目录下,建议这么做。

一定要选择第二项,否者我们没法指定安装目录,会默认安装到C盘下。不过后来证明安装到哪里都无所谓,但这里作为一个安装mysql的知识点吧,因为在安装mysql server时一样可以通过这种方式选择安装路径。

安装目录如下:

三、 库文件拷贝

我的QT 安装目录为 E:\QT4\4.8.4,版本号是4.8.4 所以打开如下目录:

E:\QT4\4.8.4\src\plugins\sqldrivers\mysql,内容如下:

进入mysql 驱动安装目录下的lib目录:

将libmysql.dll 和 libmysql.lib 文件即上图圈出的文件拷贝到

E:\QT4\4.8.4\src\plugins\sqldrivers\mysql 目录下:

四、 正式编译驱动

编辑目录下的mysql.pro文件,添加:

INCLUDEPATH+="E:\MySQL\include"

LIBS+=-LE:\MySQL\lib\ -llibmysql

图中圈中的目录为mysql驱动安装的目录,这个一定不能写错。

运行qt的控制台窗口,进行文件的编译。Qt控制台打开方法如下:

控制台如下:

切换到 E:\QT4\4.8.4\src\plugins\sqldrivers\mysql目录,

输入:cd E:\QT4\4.8.4\src\plugins\sqldrivers\mysql

执行qmake

执行mingw32-make debug ,生成debug版本的链接库:

成功生成:

执行mingw32-make release,生成release版本的链接库:

成功生成:

在E:\QT4\4.8.4\src\plugins\sqldrivers\mysql项目目录下会生成如下文件:

分别进入debug与release目录,会看到生成的

qsqlmysqld4.dll、qsqlmysqld4.lib 和 qsqlmysql4.dll、qsqlmysql4.lib 链接库文件。

将这4个文件拷贝到E:\QT4\4.8.4\plugins\sqldrivers 目录下:

将之前拷贝到项目目录下的libmysql.dll 和 libmysql.lib文件拷贝到C:\Windows\System32目录下。

这样mysql驱动边完全安装完成。以上编译过程也可以用qt creator 来完成,与编译普通的qt项目没有区别。

五、 测试连接mysql

下面做一个测试程序,新建控qt制台项目,main.cpp 文件内容如下:

源码:

  
 #include <QCoreApplication>
#include <QDebug>
#include <QString>
#include <QStringList>
#include <QtSql/QtSql>
#include <QtSql/QSqlDatabase> int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv); qDebug() << "Available drivers:"; QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("127.0.0.1");
db.setPort();
db.setDatabaseName("mysql");
db.setUserName("root");
db.setPassword("qaz"); if(db.open()){
qDebug() <<"success to link mysqld db!";
} return a.exec();
}

运行结果如下:

这样便证明mysql安装完毕,Enjoy!

参考:http://jingyan.baidu.com/article/27fa7326ffb99146f8271fe0.html

QT编译mysql驱动的更多相关文章

  1. QT编译Mysql驱动问题及解决方案

    默认情况下,qt 并没有自带mysql的数据库插件,需要自己编译先安装mysql server ,运行setup.exe时选择自定义安装,安装目录设为"D:\mysqldev"不要 ...

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

    一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载, ...

  3. QT使用MySql的配置(使用addLibraryPath载入插件),编译QT的MySql驱动问题及解决方案(自己使用libmysql.lib进行编译mysql.pro,万不得已可以查看Makefile.Debug以解决问题)

    2010/04/23:Fixes : 更新批处理,以兼容WIN7. 第一次系统地玩QT,于是诞生了此预备式: [QT版本4.6.0(VS2008编译版),开发平台推荐使用Qt Creator(最新1. ...

  4. centos7下编译qt的mysql驱动

    在编译mysql驱动之前,首先要安装mysql,可以使用yum安装,这里将不再介绍. 在将qt和mysql都安装好之后,首先找到mysql的头文件以及他的共享库,我的mysql是使用yum安装的,头文 ...

  5. windows下编译qt的mysql驱动

    windows下编译qt的mysql驱动cd %QTDIR%\src\plugins\sqldrivers\mysqlqmake –o Makefile INCLUDEPATH+="C:\M ...

  6. QT的MYSQL驱动库编译

    QT的MYSQL驱动库编译 需要准备QT的源码Src,此次编译64位 在QTCreator中打开mysql.pro 修改两个pro 文件,下图为改好 1.mysql.pro TARGET = qsql ...

  7. centos 下Qt安装 mysql驱动(亲测可行)

    (前半部分没有试过,因为我的有mysql驱动,实在抱歉) 1.预防万一,先安装一下mysql-devel(一定要装!). 不安装的话后面编译会出现找不到-lmysqlclient的问题. 2. 开始编 ...

  8. Qt编译mysql以及创建表后进行导入操作

    鉴于很多同学对Qt编译myql总是不能成功.出现各种问题,今天特此写出本教程,希望可以帮到须要的同学.        首先,须要明确编译的目的和原理. 目的:Qt 5.2版本号曾经都是不带mysql驱 ...

  9. Mac下Qt连接MySQL 驱动问题

    Mac OS X下Qt的mySQL driver编译安装 原创文章,采用CC协议发布,转载请注明: 转载自canX.me 本文链接地址: Mac OS X下Qt的mySQL driver编译安装 – ...

随机推荐

  1. Parallax Mapping Shader 凸凹感【转】

    原文 http://www.azure.com.cn/default.asp?cat=11&page=2 Parallax Mapping 就是通过高度图中的高度,对纹理坐标进行偏移,来视觉上 ...

  2. spring mvc 框架核心文档

    http://docs.spring.io/spring-data/ Parent Directory - cassandra/ 01-Apr-2014 01:50 - commons/ 29-Jan ...

  3. Swift常用语法示例代码(一)

    此篇文章整理自我以前学习Swift时的一些练习代码,其存在的意义多是可以通过看示例代码更快地回忆Swift的主要语法. 如果你想系统学习Swift或者是Swift的初学者请绕路,感谢Github上Th ...

  4. ConfigurationManager.GetSection()方法的使用

    GetSection方法读取的是configSections节点,这个节点在web.config配置文件中,它比较特殊,必须放置于首节点,也就是说,在它之前不能有其它类型的节点.configSecti ...

  5. mysql升级小结和mysql_upgrade的用途

    http://blog.itpub.net/15480802/viewspace-1412259/ mysql升级 1 升级方式 分为In-place和out-of-place,前者直接覆盖当前版本, ...

  6. 初探Linux进程管理机制

    转至:http://ixdba.blog.51cto.com/2895551/543737 一 .进程的概念和分类1.进程的概念 Linux是一个多用户多任务的操作系统.多用户是指多个用户可以在同一时 ...

  7. 解决位图失真-SetStretchBltMode()

    当用以下函数加载一张位图时,当窗口发生重绘更改大小时,位图将失真: CBitmap bitmap;  bitmap.LoadBitmap(IDB_BITMAP2); BITMAP bmp;  bitm ...

  8. IIS 之 添加绑定域名 或 设置输入IP直接访问网站

    1.打开IIS,右键站点 → 编辑绑定,弹出“网站绑定”窗口,如下图:   2.点击“添加”,弹出“添加网站绑定”窗口,如下图:   注意:若想输入 IP 地址直接访问,则可以有以下两种设置任一均可: ...

  9. C语言第三节关键字、标识符、注释

    学习语法之前的提醒 C语言属于一门高级语言,其实,所有高级语言的基本语法组成部分都是一样的,只是表现形式不太一样 就好像亚洲人和非洲人,大家都有人类的结构:2只 手.2只脚.1个头,只是他们外表不太一 ...

  10. Java基础知识强化之网络编程笔记24:Android网络通信之 AndroidAsync(基于nio的异步通信库)

    1. AndroidAsync   AndroidAsync 是一个基于nio的异步socket ,http(客户端服务器端),websocket,socket.io库,AndroidAsync 是一 ...