[freetds] FreeTDS problems with converting SQL BigInt

Feroze Daud khichdo at yahoo.com
Thu Sep 19 13:20:09 EDT 2013


So, I enabled logging for my application. This is what it shows me for the column that is being corrupted.

--
token.c:526:processing result tokens.  marker is  81(TDS7_RESULT)
mem.c:519:tds_free_all_results()
token.c:1472:processing TDS7 result. set current_results to tds->res_info
read.c:179:tds_get_string: reading 20 from wire to give 10 to client.
token.c:1414:tds7_get_data_info: 
        colname = MaxQueueID (10 bytes)
        type = 108 (numeric)
        server's type = 108 (numeric)
        column_varint_size = 1
        column_size = 17 (17 on server)

--

Does this mean that the TDS stream that is being read by freetds is advertizing the column as numeric?

Is there any way to have tdslog print out the value of the column that it is reading from the socket?

feroze.




----- Original Message -----
From: James K. Lowden <jklowden at freetds.org>
To: freetds at lists.ibiblio.org
Cc: Feroze Daud <khichdo at yahoo.com>; FreeTDS Development Group <freetds at lists.ibiblio.org>
Sent: Wednesday, September 18, 2013 6:32 PM
Subject: Re: [freetds] FreeTDS problems with converting SQL BigInt

On Wed, 18 Sep 2013 13:03:50 -0700 (PDT)
Feroze Daud <khichdo at yahoo.com> wrote:

> Thanks. Unfortunately, I need to get the output parameter first, so I
> changed the sproc to return the value as a resultset, instead of an
> output parameter.

As Frediano mentioned, the server sends the output parameter after any
ROW packets.  FreeTDS makes the data available to the application as
they arrive from the server.  

> This brings me to the original problem. I am getting garbage values
> out of call to getBigInteger.

What does src/odbc/unittests/genparams show on your machine regarding
the BIGINT type?  

> Is there any way to enable Freetds logging for applications that dont
> go through the odbc driver manager?

Cf. TDSDUMP in the user guide.  

HTH.  

--jkl

P.S.  Top-posting reduces the value of the email archive by making it
harder to follow the thread. 


More information about the FreeTDS mailing list