ACILobCreateTemporary()¶
-
ACILobCreateTemporary()¶
作用:
创建临时大对象
语法:
sword ACILobCreateTemporary(ACISvcCtx *svchp,
ACIError *errhp,
ACILobLocator *locp,
ub2 csid,
ub1 csfrm,
ub1 lobtype,
boolean cache,
ACIDuration duration);
参数:
- svchp (IN)
服务上下文句柄
- err (IN/OUT)
错误句柄,该接口调用失败时,错误信息会存在该句柄上 ,调用 ACIErrorGet 获得错误信息。
- locp (IN/OUT)
存贮大对象描述符指针
- csid (IN)
设置大对象字符集ID,可传入ACI_DEFAULT
- csfrm (IN)
缓冲区数据的LOB字符集形式。 csfrm参数具有两个可能的非零值:
SQLCS_IMPLICIT : 数据库字符集ID,用于创建CLOB。 ACI_DEFAULT也可以用于隐式创建CLOB;
SQLCS_NCHAR : NCHAR字符集ID,用于创建NCLOB。
默认值为SQLCS_IMPLICIT。
- lobtype (IN)
创建大对象的类型。 ACI_TEMP_BLOB:创建临时BLOB ; ACI_TEMP_CLOB:创建临时CLOB
- cache (IN)
该参数设置成TRUE临时lob会读到缓冲cache,设置成false则不会。
- duration (IN)
临时LOB的持续时间(生命周期)。 以下是有效值:
- ACI_DURATION_SESSION : session级,session退出后清除LOB。
- ACI_DURATION_CALL : 调用即,当前调用有效,调用结束后清除LOB。
说明:
此函数在用户的临时表空间中创建一个临时LOB;完成此功能后,locp参数指向一个空的临时LOB,其长度为零;临时LOB的生存期由duration参数确定。 在其持续时间结束时,将释放临时LOB。 应用程序可以通过 ACILobFreeTemporary 调用更快地释放临时LOB。如果LOB是BLOB,则将忽略csid和csfrm参数。