Qt之编译MySQL数据库驱动(MSVC)

(2013-12-13 20:24:46)

    在Qt之操作数据库(SQLite)中已经介绍了关于Qt如何操作数据库的问题。由于授权的许可限制,Qt的开源版本无法提供所有的驱动程序,当配置Qt时,即可以选择Qt本身包含的SQL驱动程序。

    注:Qt5.2以前的版本,提供的数据库包括:ODBC、SQLite、PSQL,其它没有提供的需要自己进行编译。但从Qt5.2开始,已经包含MySQL,不需要手动编译。但是为了说明如何使用MySQL,这里将各个版本的用法都进行对比、说明。
 
Qt5.2版本
    安装Qt5.2版本的,可以在安装目录下,pluins\sqldrivers下进行查看,面包含有MySQL驱动。
 

 
 
Qt5.2之前的版本
    针对5.2之前的版本MySQL需要自行编译,这里就以5.2为例(其它版本同理)。
    关于数据库驱动的介绍以及如何编译可以参考Qt助手,里面有一节:SQL Database Drivers。
 

    下面讲述关于如何利用MSVC编译MySQL。
 
环境:VS2010 + Qt5.2
 
    其实版本问题没有什么太大影响,因为编译本来就大同小异。。。
 
一、下载Qt安装包与Qt插件
  • qt-windows-opensource-5.2.0-msvc2010_opengl-x86-offline.exe
  • qt-vs-addin-1.2.2-opensource.exe
    下载地址可参考:VS集成Qt环境搭建
    注意:安装opensource的时候记得选择源码,否则 编译的时候还得重新下载。
 
二、下载MySQL
(1)进入主页,选择:Downloads(GA)
    如下:
 
(2)转到页面最下面,MySQL Community Edition (GPL),选择:Download from MySQL Developer Zone >>
    如下:
 

(3)转到页面右上角,选择:New Releases对应的版本(这里我选择的是5.6)

    如下:
 
 
(4)转到页面最下面,Other Downloads,选择对应的版本(这里我选择的是32位)
    如下:
 
 
    下载完成之后,进行解压,拷贝到一个指定的路径(我选择的是:D:\mysql-5.6.15-win32)。
 
三、编译
(1)选择:开始->所有程序->Qt5.2.0->Qt5.2.0->MSVC 2010 OpenGL->Qt5.2.0 for Desktop(MSVC 2010 OpenGL)
    如下:
 
(2)进入Qt源码目录,我的为:D:\Software\Qt\Qt5.2.0\5.2.0\Src\qtbase\src\plugins\sqldrivers\mysql
(3)执行命令:qmake "INCLUDEPATH+=D:\mysql-5.6.15-win32\include" "LIBS+=D:\mysql-5.6.15-win32\lib\libmysql.lib" mysql.pro
    如下:
 
 
    执行完成之后,就会生成Makefile文件。
    如下:
 
 
(4)选择:开始->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio 命令提示(2010)
    如下:
 
 
(5)执行命令:nmake
如下:
 

正常结束后,就会生成MySQL驱动库。

如下:
 

(6)准备环境
    将生成的qsqlmysql.dll、qsqlmysqld.dll拷贝到D:\Software\Qt\Qt5.2.0\5.2.0\msvc2010_opengl\plugins\sqldrivers目录中。
    将MySQL目录(D:\mysql-5.6.15-win32\lib)下的libmysql.dll、libmysqld.dll拷贝到D:\Software\Qt\Qt5.2.0\5.2.0\msvc2010_opengl\bin目录中。
 
    好了,到这里就大功告成了。

Qt之编译MySQL数据库驱动(MSVC)的更多相关文章

  1. 解析Qt4.7.3编译MySql数据库驱动,存中文乱码、过滤转义字符问题

    问题:使用QSqlDataBase类建立连接MySql数据库驱动加载失败 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available ...

  2. liunx系统二进制包安装编译mysql数据库

    liunx系统二进制包安装编译mysql数据库 # 解压二进制压缩包 [root@localhost ~]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz -C ...

  3. 在web项目下注册MySQL数据库驱动失败

    java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at org.apache.catalina.loader.WebappClassLoa ...

  4. Qt 5.2中编译加载MySQL数据库驱动问题的总结

    背景: 本科毕业设计涉及图形界面与数据库查询.选择使用Qt实现图形界面编程,使用MySQL构建数据库.之前安装了Qt 5.2,后来又安装了MySQL Server 5.6 (FULL完全安装).接着就 ...

  5. Qt 无法连接mysql数据库的问题

    错误信息: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL ...

  6. MySQL数据库驱动jar包

    地址:https://www.mysql.com/

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

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

  8. 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. ...

  9. Java连接Oracle/MySQL数据库教程

    一.下载 oracle java驱动下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090 ...

随机推荐

  1. 【转载】salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载

    salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载   目前国内已经有很多公司做salesforce,但是国内相关的资料确是少之又少.上个月末跳槽去了新 ...

  2. K2 BPM_K2受邀出席QAD 2019年亚太区用户大会_全业务流程管理专家

    6月12-13日,K2受邀参加了以“云聚创新,智造未来”为主题的QAD 2019年亚太区用户大会.会议上K2同与会嘉宾们共商制造业数字化转型,就如何用流程赋能企业实现智能制造进行了精彩分享. 近期发布 ...

  3. ubuntu打开终端

    虚拟终端 Ctrl+Alt+T组合键 实际终端 Ctrl+Alt+F1 ~ F6组合键 可以在登录界面直接切换 退出终端 Ctrl+Alt+F7组合键

  4. MyBatis核心配置文件详析mybatis-cfg.xml

    <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC & ...

  5. Java入门学习总结_02

    一:注释 注释主要就是用来解释某句或者某段代码使得其他人调试更加方便.特点是在编译代码的时候不会编译注释, 不管发不发生错误.注释主要分为单行注释//(快捷键ctrl+/).多行注释/* */(快捷键 ...

  6. idou老师教你学istio 21:基于角色的访问控制

    istio的授权功能,也称为基于角色的访问控制(RBAC),它为istio服务网格中的服务提供命名空间级别.服务级别和方法级别的访问控制.基于角色的访问控制具有简单易用.灵活和高性能等特性.本文介绍如 ...

  7. idou老师教你学Istio 08: 调用链埋点是否真的“零修改”?

    本文将结合一个具体例子中的细节详细描述Istio调用链的原理和使用方式.并基于Istio中埋点的原理解释来说明:为了输出一个质量良好的调用链,业务程序需根据自身特点做适当的修改,即并非官方一直在说的完 ...

  8. APP支付宝登录--PHP处理代码

    1.首先需要参数: aucth_code  udid re_id极光推送id 2.https://open.alipay.com/platform/keyManage.htm 配置公钥私钥 3.需要s ...

  9. python学习之模块(pip),列表生成式,模块操作mysql,excel

    python基础 生成式 列表生成式 格式 [表达式 for 表达式 in 迭代对象 (可加判断)] 原: res1 = [] for i in range(1,5): res1.append(i) ...

  10. vue-cli3 将自己写的组件封装成可引入的js文件

    一.调整项目结构 首先用 vue-cli 创建一个 default 项目 // 顺便安利一篇文章<Vue 爬坑之路(十二)—— vue-cli 3.x 搭建项目> 当前的项目目录是这样的: ...