报错目前可以肯定的是,拼接的字符串超过oracle定义的上限。
plsql中varchar2长度上限是4000字节
报错语句定位到下面的这句:
我这里的p_zbdcdyh是存储过程的输出参数,故是默认数据库的字符串varchar2的大小。
p_zbdcdyh:=p_zbdcdyh||','||PSELENIUM.FDYH;
我每一个字符串是28字节,然后产生100个,拼接多半就报错了。
后面不采用拼接的方式,而是采用输出到dbms控制台看。
修改dbms的输出缓冲区,多加几个0
后话:
如果不是拼接的字符串 报这个错,多半是你定义的变量的大小不够,比如:
p_zl varchar2(25);
但是实际的这个变量取的值是26字节,那么也会报错。