CREATE OR REPLACE FUNCTION 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;
CREATE OR REPLACE PROCEDURE update_NEW_REC_tmp is
tempBlob BLOB :=utl_raw.cast_to_raw('^');
begin
execute immediate 'update audt set new_rec= CONCAT_BLOB(tempBlob,new_rec)' ;
commit;
end;
exec update_NEW_REC_tmp;
执行程序时出错:ORA-00904:“TEMPBLOB”:标识符无效
答案 0 :(得分:0)
我认为你必须在你的匿名声明中使用绑定变量:
update audt set new_rec= CONCAT_BLOB(tempBlob,new_rec)
tempBlob和new_rec变量超出范围。
我认为您可以提供有用的Oracle文档:click here