读书人

调用存储过程时当若入参varchar2长度大

发布时间: 2014-01-28 21:22:40 作者: rapoo

调用存储过程时当若入参varchar2长度大于4000个字符出错

我现在使用的存储过程声明如下
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 的数组?
如果可以,怎么做,最好能给个例子;

------解决方法--------------------------------------------------------
Varchar2 变长字符,≤4000个字符
Long 可变字符,≤2GB个字符
Varchar (同Varchar2)可变字符,≤4000个字符
------解决方法--------------------------------------------------------
Varchar2 4000字节数
使用Long类型, 存储类型仍然是文本,但长度增大较多
------解决方法--------------------------------------------------------
varchar2 应该最多支持4000字节数的

long型的可以到2G
------解决方法--------------------------------------------------------
varchar2 在8i之前只能存储2000字符
8i之后可以到4000
long可以到2G

        

读书人网 >oracle

热点推荐