Verbindungsserver und Codepage?

30/01/2009 - 13:30 von Klaus Mayer | Report spam
Hallo,

ich importiere über einen Linked Server 2 Tabellen aus Btrieve 6.15
(ja, gibt es wirklich noch). Die insgesamt über 2 Mio Datensàtze sind
in schicken 2,5 Minuten im SQL (2005, Latin1_General_CI_AS,Englisch
(USA)).
Soweit alles toll. Das Problem ist nur, das die Umlaute nicht korrekt
übersetzt werden. Speziell geht es mir um ' | ' dieses Zeichen,
welches als hochgestellte 3 im SQL landet.
Kann ich dem Linked Server eine Codepage unterschieben, so das die
Übersetzung klappt?

Thx für Eure Tipps,

Klaus
 

Lesen sie die antworten

#1 Elmar Boye
30/01/2009 - 14:59 | Warnen spam
Hallo Klaus,

Klaus Mayer schrieb:
ich importiere über einen Linked Server 2 Tabellen aus Btrieve 6.15
(ja, gibt es wirklich noch). Die insgesamt über 2 Mio Datensàtze sind
in schicken 2,5 Minuten im SQL (2005, Latin1_General_CI_AS,Englisch
(USA)).
Soweit alles toll. Das Problem ist nur, das die Umlaute nicht korrekt
übersetzt werden. Speziell geht es mir um ' | ' dieses Zeichen,
welches als hochgestellte 3 im SQL landet.



Das dürfte wohl Zeichencode 179 (0xB3) sein, was im OEM (DOS)
Zeichensatz 850 ein Linienzeichen darstellt:
<URL:http://www.kostis.net/charsets/cp850.htm>

In den ANSI Zeichensàtzen gibt es keine Linienzeichen,
soweit es den ANSI Bereich angeht (0x20- 0xff).
Für Unicode gàbe es zwar eine vergleichbares Zeichen (U+2502).
Nur würde das vollstàndige Umstellung auf Unicode erfordern,
IMO ein bissel viel für ein Zeichen.
Und in einer Anwendung kàme es nur an, wenn sie Unicode
beherrscht (eine DOS Linie wird nicht mehr daraus).

Einfacher Du einigst Dich auf den senkrechten Strich der
Zeichencode 124 (0x7c) liegt. Da er im ASCII Bereich liegt,
existiert er sowohl bei DOS als auch bei ANSI.

Ob Du das in der Quelle oder im Ziel machst, hàngt davon ab,
ob Du die schicken 2,5 Minuten nochmal testen willst ;-)

Gruß Elmar

Ähnliche fragen