![]() |
Datenbank: Firebird • Version: 2 • Zugriff über: egal
FB: Charset ISO8859_1 Zeichen mit Code 150, arithmetic overflow
Hallo #,
beim Import fremder Daten (Inhalt liegt nicht in unserer Hand) habe ich folgendes Problem. Den lange Bindestrich (Ord('-')=150) kann ich zwar in die DB packen. Das Select bringt mir aber die vielbekannte "arithmetic exeption, buffer underrun". Lösung: Das Zeichen ausfiltern und durch normale Bindestriche ersetzen. Den Charset kann ich nicht ändern. Was ich brächte wäre eine Funktion "Ersetze_Alle_Ungültigen_Zeichen_In_CharSetISO8859 _1_DurchLeerzeichen". Wie kann ich da Vorgehen ? Danke Heiko |
AW: FB: Charset ISO8859_1 Zeichen mit Code 150, arithmetic overflow
Da gibt es viele Möglichkeiten...
z.B. clientseitig beim Import die entsprechenden Zeichen ersetzen oder serverseitig über einen Trigger (BeforeInsert)... Wenn ich die Tabelle bei Wikipedia richtig deute, müssten das die Zeichen 0-31, 127-159, >255 sein... |
AW: FB: Charset ISO8859_1 Zeichen mit Code 150, arithmetic overflow
Hallo,
Morphie, ja korrekt. Das sind die Nummern, die ich auch herausgefunden habe. Was ärgerlich ist, dass FB die Daten einträgt, aber nicht auslesen kann. Heiko |
AW: FB: Charset ISO8859_1 Zeichen mit Code 150, arithmetic overflow
Bei mir klappt das grundsätzlich mit Firebird 2.5 in Database Workbench. Befinde mich in einer ISO8859_1 Datenbank und insertiere wie folgt:
Code:
Nach einem SELECT auf diese Tabelle sehe ich den langen Bindestrich.
insert into t1 (VC40) select ascii_char(150) from rdb$database
|
AW: FB: Charset ISO8859_1 Zeichen mit Code 150, arithmetic overflow
Hallo Thomas,
unter FB 2.01 (Zugriff per IBDAC) geht es nicht. Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz