<p>When you create a procedure (or a function) in Oracle PL/SQL, you cannot specify the maximum length of the varchar2 arguments, only the datatype. For example</p>

<pre><code>create or replace procedure testproc(arg1 in varchar2) is
begin
  null;
end;
</code></pre>

<p>Do you know the maximum length of a string that you can pass as the arg1 argument to this procedure in Oracle ?</p>

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