[freetds] intermittent empty results

David Barnwell david.barnwell at well.ox.ac.uk
Tue Jun 29 08:43:17 EDT 2004

Hi James,

Yes, I get syb_result_type = 4043 in the error case (when SQL Server decides
to update statistics) and 4040 on each row in the normal case.

Thanks to everyone for very prompt responses -- I can now code for this case
without difficulty.

Best regards,

----- Original Message ----- 
From: "James K. Lowden" <jklowden at schemamania.org>
To: "FreeTDS Development Group" <freetds at lists.ibiblio.org>
Sent: Tuesday, June 29, 2004 12:12 AM
Subject: Re: [freetds] intermittent empty results

On Mon, 28 Jun 2004 14:53:53 EDT, Thompbil18 at aol.com wrote:
> we have no way of knowing of course whether this is a valid return
> status that you might want to retrieve or not, so we do what we do with
> all return status messages - we "manufacture" a result set for the
> return status, and inform ct-library that there is a return status to
> fetch.


"perldoc DBD::Sybase" says:

       You can get the type of the current result set with
       $sth->{syb_result_type}. This returns a numerical value,
       as defined in $SYBASE/include/cspublic.h:

               #define CS_ROW_RESULT           (CS_INT)4040
               #define CS_CURSOR_RESULT        (CS_INT)4041
               #define CS_PARAM_RESULT         (CS_INT)4042
               #define CS_STATUS_RESULT        (CS_INT)4043
               #define CS_MSG_RESULT           (CS_INT)4044
               #define CS_COMPUTE_RESULT       (CS_INT)4045

       In particular, the return status of a stored procedure is
       returned as CS_STATUS_RESULT (4043), and is normally the
       last result set that is returned in a stored proc execu-

The script in your original posting doesn't use syb_result_type.  It might
be just what the doctor ordered.  Dr. Bill, that is.

FreeTDS mailing list
FreeTDS at lists.ibiblio.org

More information about the FreeTDS mailing list