Skip to Content.
Sympa Menu

freetds - RE: [freetds] Problem with data type conversions and FreeTDS

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Lowden, James K" <LowdenJK AT bernstein.com>
  • To: 'FreeTDS Development Group' <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] Problem with data type conversions and FreeTDS
  • Date: Wed, 30 Jul 2003 10:58:17 -0400

> From: James Vanns [mailto:jimv AT canterbury.ac.uk]
> Sent: July 30, 2003 9:13 AM
>
> I had a friend create a table on his M$ SQL server 2000 with just one
> row and as many columns as data types. He filled each field with a
> different value corresponding to data type. E.g.
>
> bigint, bit, char, datetime, float, money, nvarchar, unique
> 1111119,1,c,30/04/2003 13:00:19,23.45, 123.45, hello,
> {F44A-etc-...blah}
>
> Note the Unique identifier in the above example is not the
> real value I
> just couldn't be bothered to write it out in full!
>
> Anyway using the code snippet below works great except when trying to
> convert and print the unique ID. What should I be doing to allow all
> data types to be printed successfully as with tsql and sqsh?

Welcome, James.

sqsh doesn't understand the uniqueidentifier datatype. tsql does. It's not
a blob; it's a structure. I don't know if it can be converted to an image
or varbinary type. It can be converted to char/varchar.

$ tsql -S$S -U$U -P$P
locale is "C"
using default charset "ISO-8859-1"
Msg 5703, Level 0, State 1, Server NTS0214, Line 0
Changed language setting to us_english.
1> select newid()
2> go

016BA787-C0A4-11D7-BAA8-0004ACE38BF3
1>

Does that answer your question?

Supporting code for the conversion can be found in src/tds/convert.c.

I note we don't test uniqueidentifier conversions in our unit test.
Probably ought to.

One last thing, if you don't mind my mentioning it. We usually discourage
people from using libtds directly, in favor of db-lib, ct-lib, and ODBC.
Our TDS library is an internal convenience for us, and changes quite
frequently. The client libraries OTOH have external specifications we're
striving to meet, so using them is to your advantage. If you're sure you
want to use libtds, that's fine, too, but you'll want to stay subscribed
here to keep abreast of its metamorphosis.

Hope that's of some use to you.

--jkl
-----------------------------------------
The information contained in this transmission may contain privileged and
confidential information and is intended only for the use of the person(s)
named above. If you are not the intended recipient, or an employee or agent
responsible for delivering this message to the intended recipient, any
review, dissemination, distribution or duplication of this communication is
strictly prohibited. If you are not the intended recipient, please contact
the sender immediately by reply e-mail and destroy all copies of the original
message. Please note that we do not accept account orders and/or instructions
by e-mail, and therefore will not be responsible for carrying out such orders
and/or instructions.






Archive powered by MHonArc 2.6.24.

Top of Page