Subject Re: [IB-Architect] Select procedures
Author Jim Boyle
> At 06:13 PM 6/7/00 -0500, Jim Boyle wrote:
> >"execute procedure foo" for all procs, then use
> >SQLNumResultCols(...) to check for a result set.
> >Sybase SQLAnywhere uses this method.
>
> Jim Starkey:
> Both "execute" and "select" procedures can return arguments,
> so SQLNumResultCols (meaning sqlda.sqld) method doesn't work.
> Sigh.

The INTERSOLV IB driver is doing the same in traces for
all procedure types, for example

JPBDEM32 40:3d ENTER SQLExecDirect
HSTMT 0x00753b90
UCHAR * 0x00b70510 [ 25] "{ call get_emp_proj(24) }"
SDWORD 25

JPBDEM32 40:3d EXIT SQLExecDirect with return code 0 (SQL_SUCCESS)
HSTMT 0x00753b90
UCHAR * 0x00b70510 [ 25] "{ call get_emp_proj(24) }"
SDWORD 25

JPBDEM32 40:3d ENTER SQLNumResultCols
HSTMT 0x00753b90
SWORD * 0x0003fdbe

JPBDEM32 40:3d EXIT SQLNumResultCols with return code 0
(SQL_SUCCESS)
HSTMT 0x00753b90
SWORD * 0x0003fdbe (1)

JPBDEM32 40:3d ENTER SQLColAttributes
...

I suppose from an ODBC point of view an IB execute procedure
that returns values is returning a result set of one row.
Sorry I can't help.

Jim