Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle OUT Parameters
mtek_at_mtekusa.com wrote:
> Hello Everyone,
>
> We are running Oracle 8.1.7. I have a package procedure which has
> some OUT parameters. The procedure however is not working. After a
> very detailed investigation, bringing the procedure through a
> debugger, I found the problem.
>
> One of the parameters that is being passed back to the calling
> application, which is a PHP script, is more than 1000 characters
> long. The OUT parameter is defined as a VARCHAR2. However, only 200
> characters are being returned. When I move my mouse over that
> variable in the debugger, it shows VARCHAR2(200).
>
> I was under the impression that the limitation of the OUT parameter
> was somewhere in the 32,000 range.
>
No - that would be internal to Oracle - passing varchars to
other packaged procedures.
To external interfaces, it is 4000 characters (more precise:
4000 byte - multi byte characters may bite you!)
> Does anyone know why it would limit to 200 characters? It is very
> frustrating.
>
there is an option to define those before you start the debugging process.
In an other response, you claim: "When the variable p_save_head basically reaches 1000 characters, it says "<Value too Large>".
what does OCIBindByName($stmt, ':p_str',&$p_str, 1024); and OCIBindByName($stmt, ':p_save_out',&$p_save_out, 1024); do?
Are you sure it reaches 1000 characters, not 1024? Are you sure it is characters, not bytes (1000 char may be > 1024 byte)?
-- Regards, Frank van Bortel Top-posting is one way to shut me up...Received on Tue Nov 06 2007 - 15:10:03 CST
![]() |
![]() |