AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?
Thema durchsuchen
Ansicht
Themen-Optionen

FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

Ein Thema von juergen · begonnen am 15. Aug 2008 · letzter Beitrag vom 15. Aug 2008
Antwort Antwort
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#1

FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 17:59
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBExpert
Hallo zusammen,

per SQL-Sript füge ich Datensätze (DS) ein.
Jedoch werden DS mit Umlaute(n) nicht übernommen.

Ein einzufügender DS sieht z.B. folgendermaßen aus:
INSERT INTO geodb_textdata VALUES(106,500100002,'ÖSTERREICH','de',1,1,null,null,'3000-01-01',300500000); Fehlermeldung:
Zitat:
Error Message:
----------------------------------------
Invalid token.
Malformed string.
Der Feldtyp ist als "VarChar" deklariert mit Zeichensatz UTF-8...
Ich hatte nun angenommen, dass durch die Verwendung dieses Zeichensatzes auch Umlaute eingefügt werden können.

Weiß hier jemand Rat wie man da vorgehen muss?

Danke schon mal Vorab!



//Edit: Titel ver(schlimm)bessert...
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 18:28
Hallo Jürgen,

dein Literal ist sehr wahrscheinlich mit der CodePage WINDOWS-1252 kodiert. Du kannst es mit AnsiToUtf8() in einen passenden String konvertieren und diesen in dein Statement einbauen - vorzugsweise über einen Parameter.

Freundliche Grüße
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 18:30
Welche Sortierung hat das Feld?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 19:21
@mkinzler,
Sortierung ist auch UTF8...

Ich hatte erst gedacht es liegt evtl. an der Tabelle, welche ich auch über ein Sript erzeugt hatte, aber das Problem besteht anscheinend generell.
Habe z.B. gerade eine neue DB angelegt. Dort als "Schriftart Zeichensatze" das ANSI_CharSet ausgewählt.
Als Zeichensatz wieder UTF8 ausgewählt.
Neue Tabelle angelegt, selbes Problem.

@ marabu,
Zitat von marabu:
dein Literal ist sehr wahrscheinlich mit der CodePage WINDOWS-1252 kodiert.
Kann das überhaupt so sein, wenn die DB wie oben beschrieben angelegt wurde?

Ich habe nun mal noch mit ISO8859_1 und WIN1251 experimentiert...Selbes Problem...
Ich habe nach deinem Vorschlag AnsiToUtf8() gesucht, aber da scheint es in Firebird nichts zu geben?


Ratlose Grüße
Jürgen
Jürgen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 20:29
Ich habe es gerade auch mal getestet. Hat problemlos funktioniert
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 21:22
Hallo mkinzler,

ich habe mal eine winzige Test-DB angefügt (1 Tabelle mit 2 Datensätzen).
Bei mir hier lassen sich keine Umlaute einfügen.
Wärest du so nett und könntest das bei dir mal testen?
Dann kann man schon mal viele Sachen ausschließen.

Vielen Dank schon mal.
Angehängte Dateien
Dateityp: zip test_db_234.zip (38,6 KB, 2x aufgerufen)
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 21:36
Hat funktioniert, sowohl per Dateneingabe im Grid wie auch per SQL-Skript.
Angehängte Dateien
Dateityp: zip test_db_213.zip (38,7 KB, 2x aufgerufen)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 21:56
Danke für deine Mühe!
Wenn ich die Tabelle hier öffne, werden die Umlaute nicht angezeigt (siehe Bild).
Unter welchem Betriebssytem hast du das getestet und mit welcher FB-Version?
Ich habe unter einer dt. VISTA 32 Bit Installation (und auch kein weiteres Sprachpaket installiert) folgende FB-Version:
Server Version: WI-V2.1.1.17910 Firebird 2.1
Server Implementation: Firebird/x86/Windows NT
Service Version: 2
Miniaturansicht angehängter Grafiken
ansicht_tabellendaten_447.jpg  
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 22:01
Firebird 2.1 unter Vista x64.
Miniaturansicht angehängter Grafiken
umlaute_103.png  
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: FB: Einfügen von Umlauten in ein VarChar Feldtyp... Wie?

  Alt 15. Aug 2008, 22:21
Ok, ich hab's!
Ich habe hier ein Tutorial wonach ich vorgegangen bin.
Beim Erstellen der DB habe ich wie dort vorgeschlagen dann für die Seitengröße 4096 ausgewählt.
Wenn ich als Seitengröße 16384 zuweise funktioniert es!

Bedeutet:
- bei Verwendung von UTF8 muss die Pagesize gößer 4096 sein

Danke für die Unterstüzung und

Gute Nacht!

Grüße
Jürgen
Jürgen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz