Qt5.3.2_Oracle驱动

参考网址:http://blog.csdn.net/sdqyhn/article/details/39855847

1、这只是 Qt5.3.2 使用的驱动,它还是要调用 Oracle客户端/服务端 里面的文件。

  并不是 有了这个驱动就不需要安装Oracle客户端/服务端...

  1.1、源码所在路径:“E:\ZC_ProgramFiles_2016\Qt532_vs2010\5.3\Src\qtbase\src\plugins\sqldrivers\oci”

    ZC: 在Qt5.3.2的安装路径中搜索“oci”,还搜到一个结果:“E:\ZC_ProgramFiles_2016\Qt532_vs2010\5.3\Src\qtbase\src\sql\drivers\oci”,但是 网络上面的文章 都没有用这个路径源码的... 暂时先不管它吧...

2、将 源码 复制出来,准备编译

 2.1、貌似 需要一些依赖项 ==> 直接在 路径“E:\ZC_ProgramFiles_2016\Qt532_vs2010\5.3\Src\qtbase\src\plugins\sqldrivers\oci”中打开项目再编译

  2.1.1、提示 找不到“oci.h”

   网上搜索,解决:在 pro文件中添加 :

INCLUDEPATH += E:\oracle\product\10.2.0\db_1\oci\include
LIBPATH += E:\oracle\product\10.2.0\db_1\oci\lib\msvc

    ZC: 我这里,安装的是 Oracle10g(x86)的服务端,不同版本的Oracle 这里的路径可能会不同

  2.1.2、执行 qmake--> 重新构建,一切正常。生成的 dll文件 位于路径:“F:\plugins\sqldrivers”中,这个不知是哪里设置的...

3、使用:

  要将“F:\plugins\sqldrivers”中的响应驱动,复制到 exe所在路径的 "sqldrivers"文件夹下,不然会 报找不到驱动的错误。

4、测试代码:

  4.1、pro

QT       += core gui                sql

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = OracleTest01
TEMPLATE = app

SOURCES += main.cpp        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

#ZC: 本来 编译不通过,说找不到函数,肯定是缺少lib文件了,但是 设置了下面的语句还是不行。
#ZC: 后来才知道 原来是“QT +=”中药添加“sql”
#LIBPATH += F:/plugins/sqldrivers
#LIB += -lqsqloci

  4.2、cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSqlRecord>
#include <QtSql/QSqlError>
#include <QDebug>

#include <QMessageBox>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

#define DB_DRIVER       "QOCI" // ZC: 这里写的是“QOCI”,实际对应的所需要的 文件是“qsqloci.dll”
#define DB_HOSTNAME     "192.168.1.201"
#define DB_DATABASENAME "ZHEJIANG"
#define DB_USERNAME     "wenzhoupdpas"
#define DB_PASSWD       "dongruisoft.com"

void MainWindow::on_pbtnTest01_clicked()
{
    // ZC: 连接名
    QString strConnName = "wenzhoupdpas_z";
    QSqlDatabase sqlDataBase;
    if (QSqlDatabase::contains(strConnName))
        sqlDataBase = QSqlDatabase::database(strConnName);
    else
        // 使用Oracle数据库驱动
        sqlDataBase = QSqlDatabase::addDatabase(DB_DRIVER, strConnName);
    sqlDataBase.setHostName(DB_HOSTNAME);
    sqlDataBase.setDatabaseName(DB_DATABASENAME);
    sqlDataBase.setUserName(DB_USERNAME);
    sqlDataBase.setPassword(DB_PASSWD);

    bool bOpen = sqlDataBase.open();
    if (sqlDataBase.isOpen())
        bOpen = true;

    if (! bOpen)
    {
        QMessageBox::about(this, "Error", sqlDataBase.lastError().text());
        qDebug() << sqlDataBase.lastError().text();
    }
    else
    {
        QMessageBox::about(this, "OK", "Open Oracle10g success ! !");
        qDebug() << "Open Oracle10g success ! !";
    }
}

5、

6、

7、

8、

时间: 2024-08-10 21:28:00

Qt5.3.2_Oracle驱动的相关文章

QT5配置mysql驱动

http://blog.csdn.net/cdut100/article/details/19972749

Qt5.8以上版本编译Oracle数据库的OCI驱动教程

在前一篇的文章中我已经发过一个相似的文章,详情请点击:Qt5编译oracle驱动教程. 在那一篇文章中已经可以解决了Qt5的常用版本的Oracle数据库驱动的支持,但是在新的Qt开发工具中那种方法竟然失效了,具体出现在Qt5.7.1之后的版本. 这次我带来Qt5.8.0的编译教程,Qt5.9的版本同样适用. Qt版本是Qt5.8.0,安装路径是默认的 C:\Qt\Qt5.8.0,Oracle客户端版本oracle 11g 安装路径是 D:\app\Xiao\product\11.2.0\clie

QT5.6.0+VS2015编译MQSQL(ACCESS)X64数据库驱动

QT5.6.0+VS2015编译MQSQL(ACCESS)数据库驱动 1 说明 l 不建议QT5.6.0使用ACCESS数据库.如果想使用轻量级的数据库,可以使用Sqlite数据库. QT想要访问Access.SQL Server等数据库可以通过ODBC的方式来访问,但是QT较高版本已不提供ODBC驱动库,需要自己编译.QT5.6.0编译出来的数据库驱动是64位,但是不建议安装Access数据库,微软本身也不建议安装64位office. PS:为什么QT5.6.0不编译32位数据库驱动:编译数据

Qt5.5.1和Qt5.3.2编译OCI驱动教程及验证方法

我们都知道oracle数据库的强大,并且好多企业或者教学用到数据库时都会推荐使用.但是Qt因为版权问题没有封装oracle数据库专用驱动,网上也有一大堆说法和教程,但是或多或少的都有问题.下面废话不多少,直接上教程. 注:本教程采用Qt5.5.1版本来讲下Qt5.5.1和Qt5.3.2编译OCI驱动过程,其他版本请对号入座. 我的Qt版本是Qt5.5.1,安装路径是默认的 C:\Qt\Qt5.5.1. 我的oracle 11g客户端安装路径: D:\app\client\product\11.2

Ubuntu15.04下QT5.4编译配置MySQL5.6.26连接驱动

QT5.4中MySQL5.6驱动配置 1. 进入下载目录,在Ubuntu终端下面执行下面的语句,无需root权限: ./ qt-opensource-linux-x86-5.4.0.run 2. 接下来就会出现Qt安装对话框,点击"next"执行下一步: 3. 接下来选择安装位置.因为使用的不是root权限,所以建议安装在用户目录下: 4. 选择需要安装的组件,这个根据需要选择就可以了: 这里的Source 一定要勾选,才有 [email protected]_:/home/ukyli

编译Qt5.0连接MySql5.5数据库的驱动(5.0版本的编译,我记得5.2开始自带了)

第一步 1.准备好Mysql数据库安装文件,Qt5.0完整的离线安装包,以及Qt5.0的完整的源代码.安装好程序,假设Mysql的安装路径为:C:\MySQL5.5,Qt5.0的安装路径:C:\Qt\Qt5.0.0-rc2\5.0.0-rc2,而Qt5.0的解压路径为:C:\Qt\qt-5.0.1-src. 注意事项:(1)安装mysql数据库的时候,网上很多教程说要选择自定义安装,并把lib和include这个选项选上.其实这个并不重要.因为我机器上很久前装mysql时选的是typical安装

ubuntu 16.04 + N驱动安装 +CUDA+Qt5 + opencv

Nvidia driver installation(after download XX.run installation file) 1. ctrl+Alt+F1   //go to virtual terminal 2.sudo service lightdm stop   //stop X window 3.sudo init 3 4. sudo ./XX.run    if Nouveaue is using,disable it. by [sudo update-initramfs -

WIN7+Qt5.2.0连接oracle数据库的oci驱动的编译

一.前提安装 1.需要安装QT5.2.0,本介绍安装的是qt-windows-opensource-5.2.0-mingw48_opengl-x86-offline.exe: 本文安装目录:c:\Qt 2.安装oracle客户端, 本文安装的为 :win32_11gR2_database_1of2.zip win32_11gR2_database_2of2.zip 本介绍里面安装的路径为E:\app,记作为ORACELPATH 二.编译过程 1.开始菜单中找到Qt 5.2.0 for Deskt

Qt5.4 MSVC mysql驱动编译;

1. mysql安装源码 注意勾选这一步,将mysql源码安装上; 2.进行产生Makefile文件; 产生Makefile文件 qmake "INCLUDEPATH+=C:\mysql\include" "LIBS+=C:\mysql\lib\debug\libmysql.lib" -o Makefile mysql.pro 此处的mysql文件 是将mysql安装目录下的 include 与 lib 文件夹取出,新建;; 注意: mysql动态库 可以选择deb