Umlaute verhunzt

Liebe ExpertInnen,

nach einem Betriebssystem-Umstieg von NT auf 2000 habe ich ein bescheuertes Phänomen mit den Umlauten: Was vorher in die Datenbank gekommen ist, erscheint jetzt am Bildschirm unter InteractiveSQL als krude Sonderzeichen. Ziehe ich einen Extrakt aus der Datenbank (SQL Anywhere), dann sehe ich im Editor die Umlaute wie gewohnt. Schreibe ich jetzt, also nach dem BS-Wechsel, Umlaute hinein, so sehe ich sie am Bildschirm wunschgemäß, nach dem Abziehen tauchen im Editor wieder kryptische Zeichen auf.

Im Moment stehe ich völlig auf dem Schlauch. Ist das vielleicht gar kein Thema für die Datenbank, sondern eins für Windows? Da habe ich schon mit den Ländereinstellungen herumprobiert, dadurch ändert sich aber nichts. Wer weiß was?

Gruß Ralf

Hallo!

Dein Problem nennt sich „Zeichenkodierung“.
Deine Daten sind also offenbar mit einer anderen Zeichenkodierung in die Datenbank gelangt, als jetzt vom neuen OS verwendet wird.

Schau dir zuerst einmal in der Datenbank an, mit welcher Kodierung die Daten gespeichert werden. Eventuell kannst du dann auch in den datenverarbeitenden Programmen die Kodierung umstellen.

mfg
christoph

Moin, christoph,

Dein Problem nennt sich „Zeichenkodierung“.

in erster Näherung. Die Schwierigkeit daran, ist, dass ich nicht weiß, wo ich so eine Codierung auswählen kann. An Windows liegt es wohl nicht.

Schau dir zuerst einmal in der Datenbank an, mit welcher
Kodierung die Daten gespeichert werden.

Das ist nicht so einfach zu beantworten, anstatt Umlauten sehe ich krude Sonderzeichen. Selbst wenn ich mir die als Hexadezimal anschaue, weiß ich immer noch nicht, welche Codierung das wäre.

Na ja, die Datenmenge ist begrenzt. Entladen, ändern und zurückladen sollte es wohl bringen. Danke vielmals.

Gruß Ralf

Hallo!

Schau dir zuerst einmal in der Datenbank an, mit welcher
Kodierung die Daten gespeichert werden.

Das ist nicht so einfach zu beantworten, anstatt Umlauten sehe
ich krude Sonderzeichen. Selbst wenn ich mir die als
Hexadezimal anschaue, weiß ich immer noch nicht, welche
Codierung das wäre.

Welches DBMS verwendest du denn?

mfg
christoph

Moin, christoph,

Welches DBMS verwendest du denn?

SQL Anywhere, das habe ich mal im Bundle mit PowerBuilder gekauft. Vollwertiges DBMS, das in jeder Hinsicht dem Standard SQL92 entspricht. Das einzige verwandte Thema, das ich im Handbuch finde, ist die Collation Sequence, aber die arbeitet ja bekanntlich unabhängig von der Zeichendarstellung im Windows.

Gruß Ralf

Hallo!

SQL Anywhere, das habe ich mal im Bundle mit PowerBuilder
gekauft. Vollwertiges DBMS, das in jeder Hinsicht dem Standard
SQL92 entspricht. Das einzige verwandte Thema, das ich im
Handbuch finde, ist die Collation Sequence, aber die arbeitet
ja bekanntlich unabhängig von der Zeichendarstellung im
Windows.

Schau doch einmal ob du so ein ähnliches Kapitel wie bei postgresql findest. Dort wird das mit den Kodierungen beschrieben.
http://www.postgresql.org/docs/8.2/static/multibyte…

Ich vermute, dass es auch bei SQLAnywhere ähnlich ist.

mfg
christoph

1 Like

Spoiler
Moin, Christoph,

danke nochmal für den Tipp, inzwischen bin ich dem Übel auf die Spur gekommen: SQL Anywhere ist nicht so luxuriös wie die neueren DBMS, stellt aber immerhin einen „translator“ bereit:

A translation DLL can be used to convert characters from the ANSI character set (used by a Windows application) to the default character set in use by the database (code page 437), and vice versa.
Diesen translator hatte ich völlig unnötig eingebunden.

Gruß Ralf