Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> oo4o stored procedure return
I am trying to use oo4o (Oracle Objects for OLE) via ASP (and VB) to
return values from a stored procedure.
Unfortunately, I can't find a way to set the size of an output varchar2 parameter, so I'm getting the error:
ORA-20001: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
Has anyone encountered this before? Here's the code (in VB):
Set OO4OSession = CreateObject("OracleInProcServer.XOraSession") Set empdb = OO4OSession.OpenDatabase("db1", "user/pw", 0)
empdb.Parameters.Add "p_cust_cd", 39, ORAPARM_INPUT empdb.Parameters("p_cust_cd").serverType = ORATYPE_NUMBER empdb.Parameters("p_cust_cd").Value = 39 empdb.Parameters.Add "p_cc_ct_cd", 3, ORAPARM_INPUTempdb.Parameters("p_cc_ct_cd").serverType = ORATYPE_NUMBER empdb.Parameters("p_cust_cd").Value = 3
'here's the output varchar2.. how do we set its size?
empdb.Parameters.Add "p_cc_contact_desc", Null, ORAPARM_OUTPUT empdb.Parameters("p_cc_contact_desc").serverType = ORATYPE_VARCHAR2 empdb.Parameters("p_cc_contact_desc").MinimumSize = 180
'fails here...
Set PlSqlStmt = empdb.ExecuteSQL("Declare p_cust_cd number(8);
p_cc_ct_cd number(8); p_cc_contact_desc varchar2(80);Begin
get_cust_contacts(:p_cust_cd, :p_cc_ct_cd, :p_cc_contact_desc); end;")
MsgBox empdb.Parameters("p_cc_contact_desc")
End Sub
Sent via Deja.com http://www.deja.com/
Before you buy.
Received on Mon Oct 25 1999 - 17:23:49 CDT