如果输入量大于缓冲区中的数据,则会出现错误。如果输入量小于缓冲区中的数据,则仅将缓冲区中的字节或字符量写入 LOB 的末尾。

Exception

Description

VALUE_ERROR

lob_locamount 或者 offset 参数中的任何一个为 NULL、超出范围或无效。

INVALID_ARGVAL

以下情况之一:

  • amount 小于 1

QUERY_WRITE

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

BUFFERING_ENABLED

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

  • 从客户端调用 DBMS_LOB.WRITEAPPEND 时(例如,在 OBClient 中的 BEGIN / END 块中),缓冲区必须包含客户端字符集中的数据。在将缓冲区数据写入 LOB 之前,数据库会将客户端缓冲区转换为服务器的字符集。

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