ACILobClose()¶
-
ACILobClose()¶
作用:
关闭当前已经打开大对象描述符
语法:
sword ACILobClose ( ACISvcCtx *svchp,
ACIError *errhp,
ACILobLocator *locp );
参数:
- svchp (IN)
服务上下文句柄
- errhp (IN/OUT)
错误句柄,该接口调用失败时,错误信息会存在该句柄上 ,调用 ACIErrorGet 获得错误信息。
- locp (IN)
指向大对象描述符指针
说明:
关闭先前打开的内部或外部LOB。如果BFILE存在但未打开,则不会返回任何错误。如果内部LOB未打开,则返回错误。
关闭LOB都往返于服务器。对于内部LOB,关闭会触发其他依赖于close调用的代码,而对于外部LOB(BFILE),关闭实际上会关闭服务器端操作系统文件。
您不必将此LOB操作包装在open或close调用中。 如果在执行此操作之前未打开LOB,此操作会隐式打开,完成操作后再关闭。但是,如果您确实在执行此操作之前打开了LOB,则必须在提交或回滚事务之前将其关闭。
如果未将LOB操作包装在打开或关闭API中,则每次写入LOB时都会自动打开和关闭。 这会对性能产生不利影响。建议您在open或close语句中包含对LOB的写操作。
返回错误后,LOB不再标记为已打开,但是事务已成功提交。因此,将提交对事务中的LOB和非LOB数据所做的所有更改。