Oracle中varchar2 PL/SQL子程序参数的大小限制是多少?

Aur*_*oni 13 oracle plsql

在Oracle PL/SQL中创建过程(或函数)时,不能指定varchar2参数的最大长度,只能指定数据类型.例如

create or replace procedure testproc(arg1 in varchar2) is
begin
  null;
end;
Run Code Online (Sandbox Code Playgroud)

您是否知道可以作为Oracle中此过程的arg1参数传递的字符串的最大长度?

小智 15

在PL/SQL过程中,它可能高达32KB

更多信息请访问:http: //it.toolbox.com/blogs/oracle-guide/learn-oracle-sql-and-plsql-datatypes-strings-10804

  • 不完全是,真正的限制是 32767 字节,即 32KB - 1。正确答案是:http://stackoverflow.com/a/22060657/480894 (2认同)

Aur*_*oni 8

我试过testproc(lpad('',32767,'')),它的工作原理.

它有32768个字节失败,所以它是32K - 1个字节