• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Umlaute bei Interbase

dirk.fuss

Newbie
Hallo !
Ich nutze SUSE10.1 mit Interbase in der OpenSource Version 6.0.
Ich kann keine Abfrage mit Umlauten starten.Es liegt wohl am default
character?!Aber ich weis nicht wie ich den ändere und zwar so das
ich Umlaute afragen kann.
Kann mir da jemand helfen?Hier mal die Fehlermeldung.

SQL> select * from t_mitarbeiter where (nachname = 'Müller') ;

NUMMER VORNAME NACHNAME STRASSE ORT VORGESETZTER PLZ BEMERKUNG GEHALT
============ ========================= ========================= ========================= ========================= ============ ====== ================================================== ==============
Statement failed, SQLCODE = -802

arithmetic exception, numeric overflow, or string truncation
-Cannot transliterate character between character sets

Gruß
df
 

bb1898

Newbie
dirk.fuss schrieb:
Hallo !
Ich nutze SUSE10.1 mit Interbase in der OpenSource Version 6.0.
Ich kann keine Abfrage mit Umlauten starten.Es liegt wohl am default
character?!Aber ich weis nicht wie ich den ändere und zwar so das
ich Umlaute afragen kann.
Kann mir da jemand helfen?Hier mal die Fehlermeldung.

SQL> select * from t_mitarbeiter where (nachname = 'Müller') ;

NUMMER VORNAME NACHNAME STRASSE ORT VORGESETZTER PLZ BEMERKUNG GEHALT
============ ========================= ========================= ========================= ========================= ============ ====== ================================================== ==============
Statement failed, SQLCODE = -802

arithmetic exception, numeric overflow, or string truncation
-Cannot transliterate character between character sets

Gruß
df

Was ist der "default charset" der Datenbank? Wird z.B. mit "show database" angezeigt. Normalerweise müsstest Du den bei der Definition angegeben haben (ich bin mir gar nicht so sicher, was bei Firebird Standard ist, wenn man nichts sagt).

Und auf welchen Zeichensatz ist Dein Terminal eingestellt? Hilft es, diesen Zeichensatz vorübergehend umzustellen?

Wie werden die Umlaute denn angezeigt?

Wenn die Tabelle nicht zu umfangreich ist, eignet sich evtl. eine Suche mit "nachname LIKE M_ller" als Würgaround.

In einer selbstgeschriebenen Anwendung kannst (und musst) Du den Zeichensatz nach Bedarf hin- und her-konvertieren, die Kommandozeilen-Clients der Datenbanken sind in dem Punkt natürlich unzugänglich.

Unter Ubuntu (mit Gnome) stelle ich gerade fest, dass ich im Firebird-Client Umlaute nicht einmal eingeben kann, und dass eine Zeichensatz-Umstellung im Terminal nichts hilft.

Und damit ich über diese Tatsache an der richtigen Stelle zu mosern anfangen kann: unter SUSE kann man Umlaute im Kommandozeilen-Client von Firebird immerhin eingeben und die Probleme fangen erst einen Schritt später an. Richtig verstanden?
 
Oben