我有一个包含 CLOB 字段的存储过程。当我调用具有较大值(超过 33K 个字符)的存储过程时,出现错误“PLS-00172:字符串文字太长”
我的存储过程
create or replace procedure P(c clob) is
begin
dbms_output.put_line('dbms_lob.getlength(c)');
end;
调用存储过程
declare
C CLOB := 'large text over 33k characters';
begin
P(C => C);
end;
/
问题:
"PLS-00172: string literal too long" error is thrown while invoking stored proc
最佳答案
'
declare
c clob := TO_CLOB('First 32k characters')||TO_CLOB('Second 32k characters')||...;
begin
P(C => C);
end;
/
关于sql - 将大字符串值设置为 CLOB 时抛出 "PLS-00172: string literal too long"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64152987/