c oracle连接库,C语言连接Oracle数据库

bc3f9276acf88283a0569b9b9ef9ee92.png

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

目录

首先,源代码描述

其次,概述

三,连接类

四,sqlstatement类

五,程序流

1,没有结果集的SQL程序流

li>

2.结果集为SQL的程序流程

六。示例程序

1.创建一个超级女孩信息表

2.将5条记录插入到超级女孩表

3.更新超级女孩表中的记录

4.查询supergirl表中的记录

5.查询supergirl表中的记录数

7.删除supergirl表中的记录

8.执行PL/SQL过程

9,CLOB和BLOB字段操作

八,应用经验

七,版权声明

对于许多C/C ++程序员而言,操作Oracle数据库是一项技术难题。本文介绍了使用freecplus开源框架对Oracle数据库的操作。 freecplus框架是C语言技术网络作者二十年来的技术积累。易于使用。

freecplus是Linux系统下的C/C ++开源框架。有关源代码,请访问C语言技术网络(www.freecplus.net)进行下载。

本文介绍了freecplus框架中使用连接和sqlstatement的Oracle数据库操作。

类的声明文件是freecplus/db/oracle/_ooci.h。

类定义文件是freecplus/db/oracle/_ooci.cpp。

该示例程序位于freecplus/db/oracle目录中。

编译规则文件为freecplus/db/oracle/makefile。

本文将不会介绍Oracle数据库,SQL语言和C/C ++的基本知识。您应该是专业的C/C ++程序员。在阅读本文之前,您已经掌握了Oracle数据库和SQL语言的基本知识。

Oracle数据库功能强大,性能卓越,无与伦比,并提供数据访问接口OCI。 OCI非常强大,其功能如此强大,以至于普通C/C ++程序员很难控制。

freecplus框架将OCI(Oracle调用接口)封装为连接和sqlstatement类。封装的类用于操作Oracle数据库。代码简洁大方,性能出色。

接下来,我首先列出连接和sqlstatement类的声明,然后通过流程图和示例程序介绍其位的用法。

Oracle数据库连接池的连接类的声明(未列出程序员不需要关心的私有成员和数据结构):

Oracle数据库的SQL语句操作sqlstatement类的语句(未列出程序员不需要关心的私有成员和数据结构,并且未列出操作CLOB和BLOB字段的方法) :

freecplus框架将在Oracle数据库上运行的SQL语句分为两种类型:带结果集的SQL语句和不带结果集的SQL语句。

如果执行SQL语句并生成结果集,则将其称为带有结果集的SQL,即带有select关键字的数据查询语言DQL,各种简单查询,连接查询等都属于DQL。

如果执行SQL语句后未生成任何结果集,则将其称为没有结果集的SQL,包括数据定义语言DDL(主要是create,drop和alter)和数据操作语言DML(insert,update和insert)。

也可以说查询SQL语句将产生结果集,其他SQL语句将不产生结果集。

a13c3eb59e230635be72fc4fb3a4500d.png

这是一个完成的过程。在实际的开发中,如果您正在执行简单的SQL语句,则可能不需要步骤6和7。如果该SQL语句仅执行一次,则步骤7和8不需要。

ad23550b8c5b90486caa374013e37ecc.png

这是一个完成的过程。在实际开发中,如果执行简单的查询语句,则可能不需要步骤6、7和8。如果结果集中最多有一个记录,则执行步骤10和11。也不需要步骤之间的循环。

示例(createtable.cpp)

运行效果

348652e566191e204a70d4c3229ba0d2.png

示例(inserttable.cpp)

运行效果

014103ebcb1695448cc3bf0cf5fe3fe6.png

示例(updatetable.cpp)

运行效果

0b0f209f55464f616318acef8a292d91.png

示例(selecttable.cpp)

运行效果

0e7acbe29990ed32e7e8ed80bf29ef65.png

示例(counttable.cpp)

运行效果

88ed474916ef6d9ef91a88e1aee169ce.png

示例(deletetable.cpp)

运行效果

c8fbfb63aa72d84315f2d0e0e25299d6.png

示例(execplsql.cpp)

运行效果

d4f32043c3137ba37fba6959badc02fe.png

sqlstatement类还可以操作CLOB和BLOB字段。在实际开发中,这种需求并不多,本文将不进行演示。如果您在项目开发中有此需求,可以参考演示程序,该示例程序位于freecplus/db/oracle目录中,如下所示:

filetoclob.cpp:将文本文件存储在数据表的CLOB字段中。

clobtofile.cpp:将数据表的CLOB字段的内容导出到文本文件。

filetoblob.cpp:将文本文件存储在数据表的BLOB字段中。

blobtofile.cpp:将数据表的BLOB字段的内容导出到文本文件。

freecplus框架的连接和sqlstatement类充分发挥了OCI的强大功能,并具有出色的性能。本文提供的示例程序看起来很简单,但是实际上非常微妙。希望您能多考虑并慢慢意识到。

为了让每个人都完全掌握连接和sqlstatement的用法,我将录制关于freecplus框架的特殊视频。请更加注意C语言技术网络(www.freecplus.net)发布的内容。

C语言技术网络的原创文章,请指出文章的来源,作者并链接到原文。

来源:C语言技术网(www.freecplus.net)

作者:农业道德守则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值