您的位置:首页 > 编程语言 > Qt开发

QT连接接Oracle数据库大盘点

2015-10-20 08:53 239 查看
   最近几天,由于项目需要涉及到利用QT将oracle数据库连接起来,进行数据查询,原本以为很简单,但照着网上资料进行操作,各种方法试,弄了两天才弄好,中途各种郁闷,各种草泥马,但最后调通的那一刻却还是有点小激动,在这里为了以后的学习者,能够轻松解决此类问题,我将所查资料进行了一个整理以及相关知识介绍!(我以windows平台开发为例!)

  在QT连oracle中需要注意以下几点,这位你编译QOCI文件不出问题打好基础:1.在下载QT时会遇到下载多少位的QT以及下载什么样的编译环境的QT,通常下载位数需要与你连得Oracle位数一样否则编译QOCI时会一直报错。通常下载的QT的编译环境有MinGW 和VS环境,这两种环境都可以,不过不同的编译环境后期编译QOCI的方式不一样!

   这里还与大家分享一篇帖子讲的是不同平台连接数据库时大多有两种访问方式,即ADO和ODBC,这篇帖子讲其区别,讲的还不错,大家有有兴趣可以看看:http://blog.csdn.net/mythic_y/article/details/6019758

  关于具体怎么编译QOCI,大家可以参考这篇帖子http://blog.csdn.net/ac_huang/article/details/36477039#t2  

  这篇帖子写的比较详细需要注意的是在目录下的oci.pro进行一定的修改,修改如下

,要注意路径要跟着自己实际情况改,同时他写的是MinGW环境下编译QOCI,在VS环境下编译大致与上述一样,只是在最后执行mingw32-make的时候会报错,说不存在此命令,这是由于你是VS环境而不是MinGW环境所致,此时不用慌,只需要按如下操作就可以编译了,选择

中的Visual
Studio Tools,会弹出

选择VS2013 X64本机工具命令符输入命令

cd D:\Qt\Qt5.3.1\5.3\Src\qtbase\src\plugins\sqldrivers\oci(此为你的oci.pro所在路径,自己根据自己实际情况书写),然后输入nmake命令就可以了,后面的操作就与上述博客的操作一致(注意只需要复制qsqloci.dll、qsqlocid.dll就可以了),此时有可能按上述博客的方法测试是否连接Oracle数据库成功时,可能仍然会出现无法找到

#include <QSqlDatabase>的错误,此时需要的操作是在

  搜素oci.dll文件,然后将其路径添加到环境变量中,这里具体怎么添加环境变量我就不做介绍,网上很多,环境变量是包含关于系统及当前登录用户的环境信息的字符串,一些软件程序使用此信息确定在何处放置文件(如临时文件),因此添加了环境变量之后,需要重新启动电脑才会生效,因此重启电脑后再进行上述博客测试,测试可能还会报错,此时只需要打开你的sql_test.pro加入一句话

即QT+=sql,保存之后再编译,应该可以大功告成,祝各位好运!希望我几天看博客和测试所得能对大家有帮助!最后希望大家,遇到问题不要怕,只要肯下功夫,很多问题是可以解决的!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle qt 数据库