如何使用 ORACLE 中的 SQL UPDATE 命令将 BLOB 数据附加/连接到 BLOB 列
我需要将数据附加到我的 BLOB 字段, 如何使用 UPDATE 命令执行此操作? 我要问的是;是否可以连接 blob 数据,以便我最终可以将其设置为类似的字段 更新BLOB_表 放 BLOB_field = BLOB_field + BLOB_data
我尝试使用 DBMS_LOB.APPEND 但它不返回值;所以我创建了一个函数,它给出了“指定的 LOB 定位器无效”的错误
CREATE OR REPLACE FUNCTION MAKESS.CONCAT_BLOB(A in BLOB,B in BLOB) RETURN BLOB IS
C BLOB;
BEGIN
DBMS_LOB.APPEND(c,A);
DBMS_LOB.APPEND(c,B);
RETURN c;
END;
/
I need to append data to my BLOB field,
how can I do this using an UPDATE command?
What i am asking is; is it possible to concatenate blob data so that i can eventually set it to a field like
UPDATE BLOB_table
SET
BLOB_field = BLOB_field + BLOB_data
I tried using DBMS_LOB.APPEND but it does not return a value; so i created a function which gives me an error of "invalid LOB locator specified"
CREATE OR REPLACE FUNCTION MAKESS.CONCAT_BLOB(A in BLOB,B in BLOB) RETURN BLOB IS
C BLOB;
BEGIN
DBMS_LOB.APPEND(c,A);
DBMS_LOB.APPEND(c,B);
RETURN c;
END;
/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要使用
创建一个临时 blob DBMS_LOB.createtemporary
:那么您应该能够在更新语句中使用它:
You need to create a temporary blob with
DBMS_LOB.createtemporary
:Then you should be able to use it in an update statement:
借助 PL/SQL blob 可以就地更新,根本不需要自定义函数:
With help of PL/SQL blob can be updated in place with no need for custom function at all: