我定义了以下这个变量
sqlstr varchar2(32767);然后动态生成字符串:
for v_cur 1..30  
   loop 
   sqlstr := sqlstr + '我构造的字符串';
end loop;
我用pl/sql跟踪的时候,sqlstr的值在前几个循环还能看到具体的值,稍微后面的循环,sqlstr的值就显示不出来,光标停在该变量上面,只显示'Long Value'。我看了看,我构造的字符串值还没超过32767这个宽度呢,怎么就不显示了。不知这是怎么回事,有什么解决办法吗?
请大家帮一下忙。谢谢了!

解决方案 »

  1.   

    定义了以下变量
    sqlstr varchar2(32767);然后动态生成字符串:
    for v_cur 1..30  
       loop 
       sqlstr := sqlstr || '我构造的字符串';
    end loop;
      

  2.   

    sqlstr varchar2(4000);如果可以得话,你把长度改成4000,超过4000得就不能直接跟踪到,只有用dbms_output
      

  3.   

    不行,改成4000的宽度不行。要是在PB里就可以看得完。不懂Oracle怎么限制这么多的啊。难道需要大文本才行吗?