Skip to Content.
Sympa Menu

freetds - RE: Strange error in tsql

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • 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 18:00:08 +0100


Il ven, 2002-11-08 alle 17:29, Frediano Ziglio ha scritto:
> 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
>
>
>
> ---
> You are currently subscribed to freetds as: [freddyz77 AT tin.it]
> To unsubscribe, forward this message to $subst('Email.Unsub')






Archive powered by MHonArc 2.6.24.

Top of Page