tags:

views:

10104

answers:

2

When you create a procedure in Oracle PL/SQL, you cannot specify the maximum length of the varchar2 arguments, only the datatype. For example

create or replace procedure testproc( arg1 varchar2 ) is
begin
  ...
  ...
end;

Do you know the maximum length of a string that you can pass as the arg1 argument to this procedure in Oracle 10g ?

Thanks!

+6  A: 

In PL/SQL procedure it may be up to 32KB

Futher information here: http://it.toolbox.com/blogs/oracle-guide/learn-oracle-sql-and-plsql-datatypes-strings-10804

Gravstar
+1  A: 

I tried with testproc( lpad( ' ', 32767, ' ' ) ) and it works.

With 32768 bytes it fails, so it's 32K - 1 bytes

Aurelio Martin