OCI函数简单解析

OCL函数参考

下面的表列出了Open Client库支持的函数。需要注意的是所涉及到的头文件必须由用户提供,Postgres Plus Advance Server本身并不提供这些文件。

表9-54与连接,认证和初始化相关的函数

函数名称

描述

OCIEnvCreate

创建一个OCI环境

OCIEnvInit

初始化一个OCI环境句柄

OCIInitialize

初始化OCI环境

OCILogoff

释放一个会话

OCILogon

创建一个登录连接

OCILogon2

使用不同的方式创建一个登录会话

OCIServerAttach

建立到数据源的访问路径

OCIServerDetach

删除到数据源的访问

OCISessionBegin

创建一个用户会话

OCISessionEnd

结束一个用户会话

OCISessionGet

从会话池中获取一个会话

OCISessionRelease

释放一个会话

OCITerminate

从共享内存子系统中分离

表9-55与句柄和描述符相关的函数

函数名称

描述

OCIAttrGet

获取句柄属性

OCIAttrSet

设置句柄属性

OCIDescriptorAlloc

分配并且初始化一个描述符

OCIDescriptorFree

释放一个已分配的描述符

OCIHandleAlloc

分配并且初始化一个句柄

OCIHandleFree

释放一个已分配的句柄

OCIParamGet

获取一个参数描述符

OCIParamSet

设置一个参数描述符

表9-56 与绑定,定义和描述相关的函数

函数名称

描述

OCIBindByName

使用名称绑定

OCIBindByPos

使用位置绑定

OCIBindDynamic

绑定后设定其他的属性

OCIBindArrayOfStruct

为批量操作绑定一个数组结构

OCIDefineByPos

定义一个输出变量结合

OCIDefineDynamic

为定义设定其他属性

OCIDescribeAny

描述存在的模式对象

OCIStmtGetBindInfo

获取绑定和指示变量名称和句柄

表 9-57与语句相关函数

函数名称

描述

OCIStmtExecute

执行一个已准备的SQL语句

OCIStmtFetch

获取数据集中一行记录(已经作废)

OCIStmtFetch2

获取数据集中一条记录

OCIStmtPrepare

准备一个SQL语句

OCIStmtPrepare2

准备一个SQL语句

OCIStmtRelease

释放一个语句句柄。

表9-58与事务相关的函数

函数名称

描述

OCITransCommit

提交事务

OCITransRollback

回滚事务

表 9-59其它相关函数

函数名称

描述

OCIClientVersion

返回Client库的版本号

OCIErrorGet

返回一条错误消息

OCIPasswordChange

更改密码

OCIPing

确定连接和服务器处于活动状态

OCIServerVersion

获取包含Oracle版本的字符串

 表 9-60与日期和日期时间类型的相关函数

函数名称

描述

OCIDateAddDays

增加或者减去天数

OCIDateAddMonths

增加或者减去月份数

OCIDateAssign

分配日期

OCIDateCheck

检查给定的日期是否有效

OCIDateCompare

比较两个日期

OCIDateDaysBetween

找出两个日期之间的天数

OCIDateFromText

将一个字符串转换为日期

OCIDateGetDate

获取一个日期中的日期部分

OCIDateGetTime

获取一个日期中的时间部分

OCIDateLastDay

获取每月最后一天的日期

OCIDateNextDay

获取明天的日期

OCIDateSetDate

设置一个日期中的日期部分

OCIDateSetTime

设置一个日期中的时间部分

OCIDateSysDate

获取当前系统日期和时间

OCIDateToText

将日期转换为字符串

OCIDateTimeAssign

赋予日期时间

OCIDateTimeCheck

检查日期是否有效

OCIDateTimeCompare

比较两个日期时间的值

OCIDateTimeConstruct

构建一个日期时间描述符

OCIDateTimeConvert

将日期时间类型变量转换成其它类型变量

OCIDateTimeFromArray

将大小为OCI_DT_ARRAYLEN的数组转换为OCIDateTime描述符。

OCIDateTimeFromText

根据指定的格式将字符串转换成OCIDateTime描述符中的Oracle日期时间类型。

OCIDateTimeGetDate

获取日期时间类型值中的日期部分。

OCIDateTimeGetTime

获取日期时间类型值中的时间部分。

OCIDateTimeGetTimeZoneName

获取一个日期时间类型值中时间区域名称部分

OCIDateTimeGetTimeZoneOffset

获取一个日期时间类型值中时间区域的(小时,分钟)部分

OCIDateTimeSubtract

把两个日期时间型的值作为输入参数,返回这两个值的间隔

OCIDateTimeSysTimeStamp

获取系统当前的日期和时间作为一个时间戳,并且带有一个时间区域。

OCIDateTimeToArray

将一个OCIDateTime描述符转换成一个数组

OCIDateTimeToText

根据指定的格式将一个日期类型的值转换成字符串类型的值

表9-61与数值相关的函数

函数名称

描述

OCINumberAbs

计算绝对值

OCINumberAdd

执行数值加法操作

OCINumberArcCos

计算反余玄函数值

OCINumberArcSin

计算反正玄函数值

OCINumberArcTan

计算反正切函数值

OCINumberArcTan2

计算反正切的两个数值

OCINumberAssign

将一个数值分配给另外一个变量

OCINumberCeil

计算一个数值的ceiling值

OCINumberCmp

比较数值

OCINumberCos

计算余弦值

OCINumberDec

对数值进行减一操作

OCINumberDiv

对两个数值进行除法操作

OCINumberExp

将 e 传递给指定的数值作为幂级数

OCINumberFloor

计算一个数值的floor值

OCINumberFromInt

将一个整数转换成一个Oracle数值

OCINumberFromReal

将一个实数转换成一个Oracle数值

OCINumberFromText

将一个字符串转换成一个Oracle数值

OCINumberHypCos

计算双曲余玄值

OCINumberHypSin

计算双曲正玄值

OCINumberHypTan

计算双曲正切值

OCINumberInc

对数值进行加一操作

OCINumberIntPower

传递给定的底数做为整型的幂级数

OCINumberIsInt

测试数值是否为一个整数

OCINumberIsZero

测试数值是否为0

OCINumberLn

计算自然对数值

OCINumberLog

以任意数为底计算对数值

OCINumberMod

对数值进行取模操作

OCINumberMul

对数值进行乘法操作

OCINumberNeg

对一个数值进行求反操作

OCINumberPower

以e为底求幂级数

OCINumberPrec

将一个数值四舍五入到一个指定数值的小数点位

OCINumberRound

将一个数值四舍五入到指定的小数点位

OCINumberSetPi

将一个数值初始化为Pi

OCINumberSetZero

将一个数值初始化为0

OCINumberShift

执行乘10操作,移动指定数值的小数点位

OCINumberSign

获取数值的符号

OCINumberSin

计算正玄值

OCINumberSqrt

计算一个数值的平方根

OCINumberSub

进行减法操作

OCINumberTan

计算正切值

OCINumberToInt

将一个数值转换成一个整数

OCINumberToReal

将一个数值转换成一个实数

OCINumberToRealArray

将一个数值型数组转换成一个实数型数组

OCINumberToText

将一个数值转换成一个字符串

OCINumberTrunc

在指定的小数位截断一个数值

表9-62 字符串函数

函数名称

描述

OCIStringAllocSize

获取已分配用于存放字符串的内存字节数

OCIStringAssign

将字符串赋予一个字符串类型变量

OCIStringAssignText

将文本字符串赋予一个字符串类型变量

OCIStringPtr

获取字符串指针

OCIStringResize

重新设定用于存放字符串内存的大小

OCIStringSize

获取字符串的长度

表9-63与磁带和文件I/O相关的接口函数

函数名称

描述

OCIFileClose

关闭一个已打开的文件

OCIFileExists

测试文件是否存在

OCIFileFlush

将缓冲池的数据写到一个文件中

OCIFileGetLength

获取文件的长度

OCIFileInit

初始化OCIFile包

OCIFileOpen

打开一个文件

OCIFileRead

将文件内容读取到缓冲区中

OCIFileSeek

改变文件中指针的当前位置

OCIFileTerm

结束包OCIFile

OCIFileWrite

将长度为buflen的字节写到文件中。

表9-64 所支持的数据类型

数据类型名称

描述

ANSI_DATE

ANSI 日期类型

SQLT_AFC

ANSI 固定字符

SQLT_AVC

ANSI 可变字符串

SQLT_BDOUBLE

二进制双精度类型

SQLT_BIN

二进制数据类型

SQLT_BFLOAT

二进制浮点型

SQLT_CHR

字符串类型

SQLT_DAT

Oracle 日期类型

SQLT_DATE

ANSI 日期类型

SQLT_FLT

浮点型

SQLT_INT

整型

SQLT_LBI

长二进制

SQLT_LNG

长整型

SQLT_LVB

超长的长型二进制

SQLT_LVC

超长的长整型数值(或字符串)

SQLT_NUM

Oracle数值

SQLT_ODT

OCI数据类型

SQLT_STR

以0结束的字符串

SQLT_TIMESTAMP

时间戳

SQLT_TIMESTAMP_TZ

带有区域的时间戳

SQLT_TIMESTAMP_LTZ

带有本地时间区域的时间戳

SQLT_UIN

无符号整数

SQLT_VBI

VCS格式的二进制数据

SQLT_VCS

变长字符串

SQLT_VNU

变长数值

SQLT_VST

OCI 字符串类型