Ger*_*ton 16 oracle stored-procedures varchar2
我在Oracle数据库10g中有一个存储过程,我的输入是varchar2,但是当输入字符串很长时(我不确定精确长度可能> 8000),我遇到了问题.
我的想法是'intext varchar2'(如下所示)默认是太小了.在我需要更长字符串的其他情况下,我可能将varchar2定义为"intext2 VARCHAR2(32767);" 我尝试在下面的代码中类似地定义大小,但我的语法不正确.
create or replace PROCEDURE TESTPROC ( intext IN VARCHAR2
) AS ....
Run Code Online (Sandbox Code Playgroud)
intext varchar2的(默认)大小是多少?
可以定义(增加)该大小吗?
谢谢
Jus*_*ave 36
您无法为过程指定VARCHAR2参数的大小.
该过程应该很乐意接受最大32k的字符串(PL/SQL中VARCHAR2的最大大小).如果它是从SQL而不是PL/SQL调用的函数,则限制为4k,因为SQL中VARCHAR2的最大大小仅为4k.