Qt访问Oracle数据库的驱动说明

上传人:pu****.1 文档编号:491416212 上传时间:2023-09-28 格式:DOC 页数:3 大小:181.51KB
返回 下载 相关 举报
Qt访问Oracle数据库的驱动说明_第1页
第1页 / 共3页
Qt访问Oracle数据库的驱动说明_第2页
第2页 / 共3页
Qt访问Oracle数据库的驱动说明_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《Qt访问Oracle数据库的驱动说明》由会员分享,可在线阅读,更多相关《Qt访问Oracle数据库的驱动说明(3页珍藏版)》请在金锄头文库上搜索。

1、Qt访问Oracle数据库的驱动编译说明Qt免费版本没有提供QOCI驱动(Qt访问Oracle的用户接口驱动),因此必须通过利用源代码编译生成QOCI。本文介绍基于不同操作系统(Win7_X64和RHEL6.1_X64)和编译器(Win7+MinGW/VS2008和RHEL+GCC)如何生成QOCI。一、Win7_X64系统安装VS2008、。安装完毕后,则可以实现基于vs2008实现Qt软件开发。编译生成QOCI时必须用到Oracle的相关文件(oci.lib和oci.h)。如果安装了Oracle11g数据库,则编译所需要的头文件和库文件分别在$ORACLE_HOMEOCIinclude和$

2、ORACLE_HOMEOCIlibMSVC。如果未安装Oracle11g也可从Oracle官网下载.rar,直接解压可以获得所需要的头文件和库文件。(QTDIR=D:qt4.8.0; ORACLE_HOME=E:apporacleproduct11.2.0dbhome_1)1、编译生成QOCI_vs2008利用vs2008打开D:Qt4.8.0srcpluginssqldriversocioci.pro设置qsqloci的工程属性,增加头文件oci.h的路径支持设置qsqloci的工程属性,设置oci.lib路径支持通过设定configuration manager依次生成QOCI的调试版和发

3、布版。编译生成Debug版本和Release版本的动态库:qsqlocid4.dll、qsqlocid4.lib和qsqloci4.dll、qsqloci4.lib。将上述文件拷贝至$QTDIRpluginssqldrivers文件中即可。2、编译生成QOCI_MinGWMinGW编译器采用了QtCreator2.4.1集成的MinGW编译环境。采用了源代码包。(假设QtCreator的安装路径为D:QtSDK,Qt源代码解压路径D:qsrc)开始编译前,需要修改几个环境变量:在PATH中添加D:QtSDKmingwbin(备注:mingw32-make路径)D:QtSDKDesktopQt4

4、.8.0mingwbin(备注:qmake路径)在LIB中添加D:QtSDKDesktopQt4.8.0mingwlib(备注:MinGW库文件路径)E:apporacleproduct11.2.0dbhome_1OCIlibMSVC (备注:oci.lib路径)在INCLUDE中添加E:apporacleproduct11.2.0dbhome_1OCIinclude(备注:oci.h路径)通过cmd进入E:qsrcsrcpluginssqldriversoci路径,执行qmake和mingw32-make,如下图编译后生成的动态库libqsqloci4.a、libqsqlocid4.a、qs

5、qloci4.dll、qsqlocid4.dll在E:qsrcpluginssqldrivers文件夹中。将上述文件拷贝至Qt目录对应的pluginssqldirver中即可。3、QOCI插件安装利用上述方法生成QOCI插件。如果开发环境采用的QtCreator集成开发环境(安装路径QTSDK_PATH=),则根据不同的编译器将上述库文件放置在$QTSDK_PATHvs2008pluginssqldrivers或$QTSDK_PATHmingwpluginssqldrivers下面即可。如果是单独安装的Qt(QTDIR=)在放置在$QTDIRpluginssqldrivers下即可。4、Ora

6、cle访问程序例子1. #include 2. #include 3. #include 4. #include 5. intmain(intargc,char*argv)6. 7. QCoreApplicationa(argc,argv);8. / 9. QSqlDatabasedb=QSqlDatabase:addDatabase(QOCI);10. db.setHostName(192.168.0.192);11. db.setDatabaseName(dbname);12. db.setUserName(username);13. db.setPassword(passwd);14. db.setPort(1521);15. if(db.open()16. printf(打开成功/n);17. else18. printf(打开失败/n);19. / 20. QSqlQueryquery(SELECTcolumn_1FROMtable_1);21. while(query.next()22. QStringcountry=query.value(0).toString();23. printf(%s/n,country.toLocal8Bit().data();24. 25. / 26. returna.exec();27.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 文学/艺术/历史 > 人文/社科

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号