APPEND 存储过程用于将内部源 LOB 的内容附加到目标 LOB

语法

  1. DBMS_LOB. APPEND (
  2. dest_lob IN OUT NOCOPY BLOB,
  3. src_lob IN BLOB);
  4. DBMS_LOB.APPEND (
  5. dest_lob IN OUT NOCOPY CLOB CHARACTER SET ANY_CS,
  6. src_lob IN CLOB CHARACTER SET ANY_CS);

参数解释

参数

解释

dest_lob

要附加数据的内部 LOB 的定位器。

src_lob

读取数据的内部 LOB 的定位器。

异常情况

异常

描述

VALUE_ERROR

LOB 或目标 LOBNULL

QUERY_WRITE

无法在查询或 PDML 并行执行服务器中执行 LOB 写入。

BUFFERING_ENABLED

如果在任意一个 LOB 上启用了缓冲,则无法在启用 LOB 缓冲的情况下执行操作。

使用说明

  • 不强制要求将 LOB 操作包裹在 Open/Close 接口中。如果在执行操作之前没有打开 LOB,在调用过程中会更新 LOB 列上的功能索引和域索引。但是,如果在执行操作之前打开了 LOB,必须在提交事务之前将其关闭。在关闭内部 LOB 时,将更新 LOB 列上的功能索引和域索引。

    如果未将 LOB 操作包裹在 Open/Close 接口内,则每次写入 LOB 时都会更新功能索引和域索引。为了避免影响性能,建议将对 LOB 的写操作包含在 OPENCLOSE 语句中。

  • 如果在已归档的 LOB 上调用 APPEND,则它将在写入第一个字节之前隐式获取 LOB