freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
- From: Frediano Ziglio <freddyz77 AT tin.it>
- To: TDS Development Group <freetds AT franklin.oit.unc.edu>
- Subject: RE: Strange error in tsql
- Date: 08 Nov 2002 17:29:13 +0100
Il gio, 2002-11-07 alle 23:12, Lowden, James K ha scritto:
> > From: Frediano Ziglio [mailto:freddyz77 AT tin.it]
> > Sent: November 7, 2002 4:35 PM
> > >
> > > But 5.0 sends ee, ae, d1, 1, 0?
> > > Received packet @ 2002-11-07 15:43:34.383225
> > > 0000 ee 0d 00 01 00 00 30 0a 00 00 00 6c 21 4d 12 00
> >
> > Row, numeric of 33 (yes, 33!) bytes. So we must change
> > numeric limit...
> > (in tds.h is defined as 17 bytes...)
>
> I'm trying to interpret that packet:
>
> ee TDS_ROWFMT
> 0d 00 13 byte packet
> 01 00 1 column
> 00 Name length = 0
> 30 status nullable, updatable (!)
> 0a 00 00 00 user type numeric
> 6c nullable numeric
> 21 33 bytes wide
> 4d precision 64+13 = 77
> 12 scale 18
> 00 no locale
>
> Is that right?
>
> Wow. That's one big number, 10 ^ (77 - 18), like a gazillion or something.
>
Yes, there are solution and a workaround:
Solution: handle huge (256 bit) numeric types. (note that Sybase
proprietary ctlib use this type) (check all code that use numeric, check
all buffers for hold numeric).
Workaround: sybase/ms db allow numeric only of 128 bit precision, so
reading it discard high info (modify only token.c).
The solution is best (we are not on freeze). I'll try this way...
freddy77
-
Strange error in tsql,
Frediano Ziglio, 11/07/2002
- <Possible follow-up(s)>
- RE: Strange error in tsql, Lowden, James K, 11/07/2002
- Re: Strange error in tsql, Brian Bruns, 11/07/2002
- RE: Strange error in tsql, Lowden, James K, 11/07/2002
- RE: Strange error in tsql, Frediano Ziglio, 11/07/2002
- RE: Strange error in tsql, Lowden, James K, 11/08/2002
- RE: Strange error in tsql, Frediano Ziglio, 11/08/2002
- RE: Strange error in tsql, Frediano Ziglio, 11/08/2002
- RE: Strange error in tsql, Frediano Ziglio, 11/08/2002
Archive powered by MHonArc 2.6.24.