我现在使用的存储过程声明如下
create or replace procedure QWZRSQ(
        STR_GUID in varchar2, --入参
        ARESULT Out p_test.T_CURSOR ) is   
begin
  .........
end;
存储过程入参STR_GUID 类型是 varchar2;
有的时候传入的 STR_GUID 长度会大于4000个字符;
使得调用存储过程会出错;
请问这个问题怎么解决?
可不可以在调用的时候传入一个varchar2 的数组?
如果可以,怎么做,最好能给个例子;
谢谢!

解决方案 »

  1.   

    Varchar2        变长字符,≤4000个字符
    Long        可变字符,≤2GB个字符
    Varchar        (同Varchar2)可变字符,≤4000个字符
      

  2.   

    Varchar2 4000字节数
    使用Long类型, 存储类型仍然是文本,但长度增大较多
      

  3.   

    varchar2 应该最多支持4000字节数的long型的可以到2G
      

  4.   

    varchar2 在8i之前只能存储2000字符
    8i之后可以到4000
    long可以到2G