OCI 是Oracle 数据库的C 语言访问接口,它提供了一系列API 函数,用户可以通过这些函数访问数据库,也通过这些函数控制SQL 语句的执行,几乎可以操作每一个细节。OCI 接口是所有Oracle 访问接口中速度最快的,也是与Oracle 系统融合度最高的,因为Oracle 本身就是用C 语言编写的。下面就来看看怎样创建一个OCI 程序,为方便演示,整个系列文章中的例子都在linux 操作系统下编译。
头文件和库文件
要调用OCI 函数,首先要在程序开始包含OCI 的头文件,头文件的位置在$ORACLE_HOME/rdbms/public 目录下,头文件的名称是oci.h 。在编译选项中要加入头文件的路径,-I${ORACLE_HOME}/rdbms/public 。OCI 的库文件在${ORACLE_HOME}/lib 目录下,在连接选项中要包含库文件的路径和库名称,-L${ORACLE_HOME}/lib -lclntsh 。
如果写一个OCI 程序,源文件名为test_oci.c ,那么编译命令应该如下:
cc -o test_oci -I${ORACLE_HOME}/rdbms/public -L${ORACLE_HOME}/lib -lclntsh test_oci.c
编译后产生一个名称为test_oci 的可执行文件。
程序结构
创建OCI 程序有以下几个步骤:
1. 创建一个OCI 运行环境,这是OCI 程序运行的基础,创建后得到一个环境句柄。
2. 分配其他需要的句柄,初始化数据结构。
3. 连接到数据库服务器并开始一个会话。
4. 创建和准备要执行的SQL 语句。
5. 执行SQL 语句,并处理相关的数据。
6. 提交数据库更新。
7. 断开数据库连接。
8. 释放分配的句柄。
上面的每个步骤,都需要用到特定的OCI 函数,后续的章节我们会详细介绍每一个函数,然后通过例子来演示每个函数的用法,创建一个完整的OCI 程序。
