我有一个250,000个字符的字符串,我想把这个值复制到clob
类型。我分块到8块(varchar2类型),然后我想转换为clob格式,但我得到这个错误:
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
我的代码:
declare vstr_part1 varchar2(32767) := ' long string with 32,670 length '
vstr_part2 varchar2(32767) := ' long string with 32,670 length '
vstr_part3 varchar2(32767) := ' long string with 32,670 length '
vstr_part4 varchar2(32767) := ' long string with 32,670 length '
vstr_part5 varchar2(32767) := ' long string with 32,670 length '
vstr_part6 varchar2(32767) := ' long string with 32,670 length '
vstr_part7 varchar2(32767) := ' long string with 32,670 length '
vstr_part8 varchar2(32767) := ' long string with 32,670 length '
vClobVal clob;
vClobVal := vstr_part1 || vstr_part2 || vstr_part3 ||vstr_part4 || vstr_part5|| vstr_part6 ||vstr_part7 ||vstr_part8 ;
当我只使用两个块工作,但超过2块,我得到同样的错误。
我错在哪里?
1条答案
按热度按时间rlcwz9us1#
代码中唯一的错误是首先使用TO_CLOB函数将varchar 2转换为CLOB,然后才能连接它们-
Demo.