QT编写程序连接并操作oracle数据库的方法及步骤

2025-07-08 04:17:39

先判断有无QOCI驱动,若无则需自己编写,再配置数据库(新建一个数据库,配置监听程序,本地NET服务名),最后编写程序实现连接。

工具/原料

oracle 11g 安装包

Qt 4.86

oracle驱动和数据库的配置

1、先检查你的Qt中是否有oracle的接口驱动(QOCI),方法:在main.cpp中添加如下头文件:#include<QSqlDriver> #include<QSqlDatabase> #include<QDebug>添加代码代码:qDebug()<<"Available drivers:"; QStringList drivers=QSqlDatabase::drivers(); foreach(QString driver,drivers) qDebug()<<driver;编译执行结果如图1,则证明你的Qt中有oracle接口驱动,若没有QOCI,QOCI8则证明没有驱动,需要自己手动编写。

QT编写程序连接并操作oracle数据库的方法及步骤

2、若在步骤一中发现自己的QT没有oracle驱动,不要着急,我们来自己编写一个。首先要保证你的电脑里安散艉九慊装了oracle数据库,例如oracle11g。如果没有请安装一个,因为里面含有我们编写驱动所需要的头文件和库文件。安装完毕后,打开QT,在左侧的帮助选项里填写QOCI,然后点击第一项,在出现的列表中选择QOCI,在出现的页面下拉找到如图三所示,然后在开始菜单中打开Qt by digia v4.86--Qt 4.86 command,在其中输入图三中的代码,代码中的路径改为你的oracle 安装所对应的路径,然后执行代码,若执行成功,则在C:\Qt\4.8.6\src\plugins\sqldrivers\oci\debug 会出现qsqlocid4.dll,把这个文件复制到C:\Qt\4.8.6\plugins\sqldrivers路径下,在执行步骤1中的代码,就会出现QOCI了 ,证明驱动安装成功。

QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤

3、配置好驱动后,我们开始配置数据库,因为我们已经装好数据库了(安装过程百度有很多),所以先新建一个数据库,开始菜单-->Oracle-->配置和移植工具-->Database Configuration Assistant-->下一步-->创建数据库-->一般用途和事物处理(也可以选别的,我选的是这个),设置全局数据库名如图一-->设置口令、保存位置(这些信息一定要记住,连接的时候要用)。然后一直下一步。最后创建完成。

QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤

4、创建完数据库后,要创建监听程序,方法开始菜单-->Oracle-->配置和移植工具-->Net Configuration Assistant-->监听程序配置-->添加-->监听程序名LISTENER-->选择协议,TCP即可-->端口号默认-->一直下一步即可。然后打开开始菜单-->Oracle-->配置和移植工具-->NetManager.选本地 监听程序 LISTENER,先配置监听位置,主机为你要监听的ip地址(比方说你的数据库在本机,你要写程序访问这个数据库的话,就填写本机的ip地址),端口默认,然后点数据库服务,在这里填写刚才新建数据库的信息。然后左上角保存。及此,监听程序创建完毕。

QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤
QT编写程序连接并操作oracle数据库的方法及步骤

5、然后开始配置本地NET服务名,打开开始菜单-->Oracle-->配置和移植工具-->Net Configuration Assistant-->本地Net 服务名配置-->添加-->服务名填写要访问的数据库名,主机名写你的ip,然后下一步,选进行测试,若测试通过则配置成功,若没通过,则检查自己的用户名 密码 ip 是否有错。及此,本地net服务名配置完成。

6、最后,在计算机-->管理-->服务中把有关oracle的全部打开,可能有一个会打不开,及此 数据库方面配置完毕。

在QT中操作数据库

1、我们要使用的头文件如下#include<QSqlQuery>#include<QSqlField>#include<QSqlError>#include<QSqlTableModel>#include<QSqlDatabase>#include<QSqlDriver>#include<QSqlRecord>具体怎么使用就F1查看帮助吧。这一句是说使用QOCI驱动QSqlDatabase db2=QSqlDatabase::addDatabase("QOCI");设置主机名 用户名 密码 要连接的数据库名db2.setHostName(hostName); db2.setUserName(userName); db2.setPassword(passWord); db2.setDatabaseName(dataBaseword);具体程序大家自己写吧,网上有好多可以参考的。附上我的程序截图

QT编写程序连接并操作oracle数据库的方法及步骤
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢