在Oracle PL / SQL中创建过程(或函数)时,不能指定varchar2参数的最大长度,只能指定数据类型。例如
create or replace procedure testproc(arg1 in varchar2) is
begin
null;
end;
您是否知道可以作为Oracle中此过程的arg1参数传递的字符串的最大长度?
答案 0 :(得分:15)
在PL / SQL过程中,它可能高达32KB
此处有更多信息: http://it.toolbox.com/blogs/oracle-guide/learn-oracle-sql-and-plsql-datatypes-strings-10804
答案 1 :(得分:8)
我尝试使用testproc(lpad('',32767,''))并且它可以工作。
32768字节失败,所以它是32K - 1字节
答案 2 :(得分:3)
在PL / SQL中,最大VARCHAR2
数据类型的大小为 32767字节,因为10gR2(可能更早,但我刚检查了该版本的文档)。
文档参考: