Need Help with Unicode on ActivePerl 5.8.6, MS SQL 2000
- From: alexander_foken@xxxxxxxxxxxxxxxxxxx (Alexander Foken)
- Date: Thu, 28 Jul 2005 16:14:16 +0200
Hello,
A large Perl application (10^4 .. 10^5 lines of code) has to work with data on an MS SQL Server 2000 containing Unicode data in NVARCHAR columns. Perl 5.8.6 (ActivePerl) runs on the same or another Windows 2000 Server (usually english or german). The Unicode data may contain characters from all over the world, e.g. russian, chinese, arabic or hebrew, among the usual latin characters. A separate application also accesses the Database, performs some reporting and expects the data to be valid Unicode.
DBD::ODBC returns all latin characters, german umlauts and french accents, but replaces all non-latin characters with question marks ("?", ASCII 63). Also, all data returned from DBD::ODBC has the UTF8 flag off.
Other DBDs for other databases, like DBD::Oracle for Oracle 9.2 and DBD::Pg (with pg_enable_utf8=1) for PostgreSQL 8 work fine and return unicode strings with an enabled UTF8 flag. Unfortunately, these two databases are not sufficient, the application has to work with MS SQL (not my idea).
DBD::ADO is unreliable, hangs and crashes, and seems to have a lot of limitations that make the application stop working, but at least it sets the UTF8 flag and returns unicode strings.
DBD::Sybase does not work at all, it complains about missing some entry points in Sybases DLLs, and the documentation says that "?" placeholders are not supported with MS SQL. All but two or three statements in the application use "?" placeholders.
I spent three days searching Google, DBI docs and FAQ, and DBI and DBD::ODBC sources for any hints, but without success.
Any ideas, hints, tips?
Thanks,
Alexander Foken
Please inform us immediately if this e-mail and/or any attachment was transmitted incompletely or was not intelligible.
___________________________________________________________________________
This e-mail and any attachment is for authorized use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. .
- Follow-Ups:
- Re: Need Help with Unicode on ActivePerl 5.8.6, MS SQL 2000
- From: Tim Bunce
- Re: Need Help with Unicode on ActivePerl 5.8.6, MS SQL 2000
- Prev by Date: Re: DBD-Oracle-1.16 (make error)
- Next by Date: Retrieving column names using DBI and SQL Server
- Previous by thread: Re: DBD-Oracle-1.16 (make error)
- Next by thread: Re: Need Help with Unicode on ActivePerl 5.8.6, MS SQL 2000
- Index(es):
Relevant Pages
|