Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi QUERY-Alle felder vom utf8tostring convertieren ? (https://www.delphipraxis.net/165455-query-alle-felder-vom-utf8tostring-convertieren.html)

Gandimann 1. Jan 2012 12:09

Datenbank: Firebird • Version: 2.5 • Zugriff über: zeos v7

QUERY-Alle felder vom utf8tostring convertieren ?
 
Hi friends,
wie titel schon sagt ich möchte alle Felder beim lesen mit query (quasi on The Fly) mit UT8TOString convertieren... !!

mit Einzelfeld habe ich wie folgt hingegriegt:
qry.FieldByName('Feld_1').AsString :=UTF8ToString (qry.FieldByName('Feld_1').AsString);

aaaber ich möchte dass so haben:

query.allefelder :=UTF8toString(qry.allefelder)

Über ne Lösung würde ich mich sehr freuen...:shock:

Übrings...frohes neues 2012 an alle :thumb:

Gandimann

Bernhard Geyer 1. Jan 2012 12:26

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
Was ist der Sinn davon?
Was willst du erreichen?

Gandimann 1. Jan 2012 12:56

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
Hi Bernhard,
ich arbeite mommentan mit Firebird 2.5 und Zeos v7 und beim schreiben ins DB die DE Umläute machen Problem und werden nicht richtig konvertiert. Wenn ich jede einzelfeld :
qry.FieldByName('Feld_1').AsString :=UTF8ToString (qry.FieldByName('Feld_1').AsString);
convertiere funktioniert .

Es sind 68 Felder in mein Tabelle und ich möchte nicht dieses Befehl 68 mal schreiben. Daher brauch ich eine SQL statement damit ich alle felder mit UTF8toString konvertiert lesen kann.

Bernhard Geyer 1. Jan 2012 14:19

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
Zitat:

Zitat von Gandimann (Beitrag 1143881)
ich arbeite mommentan mit Firebird 2.5 und Zeos v7 und beim schreiben ins DB die DE Umläute machen Problem und werden nicht richtig konvertiert. Wenn ich jede einzelfeld :
qry.FieldByName('Feld_1').AsString :=UTF8ToString (qry.FieldByName('Feld_1').AsString);
convertiere funktioniert .

Schaut eher nach einem (Konfigurations-)Fehler bei Zeos aus. Da ich Zeos selbst nicht verwende müsste hier ein ZEOS-User hilfestellung leisten.

Gandimann 6. Jan 2012 12:38

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
*** hat keiner ´ne Idee ??

oder vielleicht ob ich irgendwie Zeos Connection so einstelle daas es automatisch UTF8 -> Strings beim lesen on the fly konvertiert.:?:

Rolf Frei 6. Jan 2012 12:48

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
Mache doch einfach einen Loop über die Felder:
Code:
for i := 0 to qry.FieldCount - 1 do
  if qry.Fields[i].DataType = ftString then
    qry.Fields[i].AsString := UTF8ToString(qry.Fields[i].AsString);
Sowas in der Art müsste dir doch helfen, allerdings ist mir nicht klar, ob du so wirklich dein Problem mit Zeos richtig löst.

DeddyH 6. Jan 2012 13:07

AW: QUERY-Alle felder vom utf8tostring convertieren ?
 
Man könnte auch in der Abfrage casten: Cannot transliterate character between character sets. Damit fällt ein "SELECT *" zwar flach, aber das macht man ja sowieso nicht ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:43 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