[freetds] Moving from protocol TDS 4.2 to 7.0 -> French char acters problem

Lowden, James K LowdenJK at bernstein.com
Thu Apr 3 09:55:39 EST 2003

> From: Philippe PAULEAU [mailto:ppauleau at cartesis.com]
> Sent: April 3, 2003 9:03 AM
> Using protocol 7.0, the french caracters ( accents, é à ... ) are not
> handled correctly.
> I've noticed that 7.0  deals with the special characters in a 
> different way (due to unicode ... )
> So i've tried to change client charset to FR ( and other ISO 
> charsets ) in the config file but nothing works.

If you place this line in freetds.conf:

	client charset = ISO-8859-1

FreeTDS will convert TDS 7.0 strings (encoded in UCS-2), using libiconv.
There are few issues to keep in mind:

1.  Your locale(1) output should indicate that you're configured for
2.  FreeTDS converts n[var]char and ntext datatypes, including metadata.  
3.  Ordinary char/varchar data are stored on the server in the server's
(single-byte) character set, and shipped to the client unaltered.  FreeTDS
will not attempt to convert char/varchar data.   For that reason, the
server's character set must match the client's.  

You can check that FreeTDS is converting correctly with "tsql -C" and
TDSDUMP.  The top of the log file will indicate if libiconv was initialized
successfully, and what conversions it will perform.  "tsql -C" will show how
FreeTDS is configured, including whether or not libiconv was linked in.  

Please tell us how you fare.  This functionality is being actively worked

> For now i only have 2 options:
>  - switch back to 4.2 which works.

Because 4.2 works, it sounds like your server and client character sets are
in order.  

>  - forget french and use english only

George Bush might recommend that, but I don't.  :-)


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.

More information about the FreeTDS mailing list