ACILobAppend()

ACILobAppend()

作用:

在目标大对象末尾追加到源大对象末尾。相当于两个大对象数据合并。

语法:

sword ACILobAppend ( ACISvcCtx        *svchp,
                     ACIError         *errhp,
                     ACILobLocator    *dst_locp,
                     ACILobLocator    *src_locp );

参数:

  • svchp (IN)

服务上下文句柄

  • errhp (IN/OUT)

错误句柄,该接口调用失败时,错误信息会存在该句柄上 ,调用 ACIErrorGet 获得错误信息。

  • dst_locp (IN/OUT)

目标大对象描述符指针,这个描述符指针必须被svchp句柄从服务器获得指定

  • src_locp (IN)

一个内部大对象描述符指针所引用的源大对象,这个描述符指针必须被svchp句柄从服务器获得指定

说明:

按指定在另一个LOB的末尾附加一个LOB值。数据从源复制到目标的末尾。源和目标LOB必须存在。目的LOB被扩展以容纳新写入的数据。将目标LOB扩展到允许的最大长度(4 GB以上)或尝试从NULL LOB复制是错误的。

源LOB定位器和目标LOB定位器必须具有相同的类型(即,它们必须都是BLOB或都必须是CLOB)。两种类型的定位器都不能启用LOB缓冲。此函数不接受BFILE定位器作为源或目标。

您不必将此LOB操作包装在open或close调用中。 如果在执行此操作之前未打开LOB,此操作会隐式打开,完成操作后再关闭。但是,如果您确实在执行此操作之前打开了LOB,则必须在提交或回滚事务之前将其关闭。

如果未将LOB操作包装在打开或关闭API中,则每次写入LOB时都会自动打开和关闭。 这会对性能产生不利影响。建议您在open或close语句中包含对LOB的写操作。