QT5.4 编译oracle 驱动
发布时间:2020-12-12 15:10:21 所属栏目:百科 来源:网络整理
导读:一、在oracle官网下载包 instantclient-sdk-nt-12.2.0.1.0.zip 和instantclient-basiclite-nt-12.2.0.1.0.zip 这两个包 (需要考虑QT为32位还是64位来下载相应的包) 二、驱动编译 1、打开编译命令行 2、执行如下命令: set INCLUDE=%include%;F:instantcli
一、在oracle官网下载包
二、驱动编译 1、打开编译命令行 2、执行如下命令: set INCLUDE=%include%;F:instantclient_sdkinclude;F:QtQt5.4.1Toolsmingw491_32include set LIB=%lib%; F:instantclient_sdk libmsvc cd F:QtQt5.4.15.4Srcqtbasesrcpluginssqldriversoci(自己QT实际安装路径) qmake oci.pro mingw32-make 其中:F:instantclient_sdkinclude 为instantclient-sdk-nt-12.2.0.1.0.zip实际解压路径 3、拷贝编译的结果文件 拷贝F:QtQt5.4.15.4Srcqtbasepluginssqldrivers目录下:libqsqloci.a、libqsqlocid.a、qsqloci.dll、qsqlocid.dll 四个文件到F:QtQt5.4.15.4mingw491_32pluginssqldrivers文件夹下 4、编译程序,进行测试 #include <QCoreApplication> #include <QSqlDatabase> #include <QSqlQuery> #include <QVariant> #include <QDebug> #include <QSqlError> int main(int argc,char *argv[]) { QCoreApplication a(argc,argv); QSqlDatabase db = QSqlDatabase::addDatabase("QOCI"); db.setPort(1521); db.setHostName("192.168.1.101"); db.setDatabaseName("ORCL"); //db.setUserName("myoracle"); db.setUserName("lhl_oracle"); db.setPassword("111"); if (!db.open()) { //链接数据库失败"; qDebug() << db.lastError().text(); qDebug() << "Open error"; return false; } qDebug() << "Open OK"; QSqlQuery query; bool b = query.exec("SELECT * from MYORACLE."user""); while (query.next()) { QString id = query.value(0).toString(); qDebug() << "ID= " <<id ; } qDebug() << db.lastError().text(); return a.exec(); } 同时拷贝F:softoracleinstantclient-basiclite-nt-12.2.0.1.0instantclient_12_2目录下的所有dll文件到程序运行目录如下图:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Atitit.ati?dwr的原理and设计?attilax?总结?java?php?版本
- NAND FLASH控制器
- cocos2dx+lua打包Android过程中的问题
- ruby-on-rails – warden custom_failure
- ruby-on-rails – Rails和Authlogic.显示当前登录的用户
- 用flash CS 5导出swf时出现错误“优化字节代码时发生未知错
- swift – 这两个问号是什么意思?
- xml – 在.xsl中,取一个范围值,如“130-210”,并确定“86”
- Create Oracle 12c Template Database In Silent
- VB.NET相当于C#的属性简写?