AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi wie kann man unicode aus der DB auslesen?
Thema durchsuchen
Ansicht
Themen-Optionen

wie kann man unicode aus der DB auslesen?

Ein Thema von polondo · begonnen am 31. Jul 2006 · letzter Beitrag vom 31. Jul 2006
Antwort Antwort
polondo

Registriert seit: 1. Sep 2005
84 Beiträge
 
#1

wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 13:44
hallo,

ich möchte gerne in meinem Programm Unicode-Daten aus einer Datenbank auslesen. Der sql query Assistent zeigt mir diesen Inhalt korrekt an, jedoch bekomme ich im Delphi lauter "?" wenn ich diesen aus der Db auslese und in eine Combobox schreiben möchte. Ich habe schon versucht Funktionen wie AnsiToUTF8 oder UTF8Decode/Encode einzusetzen, bekomme aber wieder nur lauter "?". Auch habe ich vergebens versucht die Daten nach dem Auslesen zuerst in einen Widestring zu kopieren und dann erst in die Combobox zu schreiben.

Hat jemand eine Idee wie man vorgehen müsste?

btw. als comboboxkomponente benutze ich die Unicode-Controls von TNT. Also kann es schonmal nicht an der Unicode Tauglichkeit der Combobox liegen. Ich müsste die Daten nur als Unicode auslesen ... nur wie?

mfg R.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 13:55
Bei mir geht es

Da du aber nicht verrätst welche Datenbank und welchen Zugriffsweg du verwendest verrate ich dir auch nicht welchen Fehler du machst
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
polondo

Registriert seit: 1. Sep 2005
84 Beiträge
 
#3

Re: wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 14:00
ok einverstanden ;O)

also so siehts bei mir aus wenn ich die Daten aus der Db in die Combobox schmeissen möchte

Delphi-Quellcode:
procedure TDM.SqlInvoiceInvoiceTypeExecute(Sender: TObject);
var
r,c :integer;
begin
ADOQuery.SQL.Clear;

  WITH ADOQuery.SQL DO Begin
  ADD('SELECT description from InvoiceType');
  end;
  ADOQuery.Open;
  //reads the complete dataset into the combobox
  ADOQuery.First;
    for r:= 1 to ADOQuery.RecordCount do
    begin
      for c := 0 to ADOQuery.FieldCount -1 do
      InvoiceForm.CmBxInvoiceType.Items.Add(ADOQuery.Fields[c].Text);
      ADOQuery.Next;
    end;
  end;
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 14:01
1, Nimm lieber TADODataset statt TADOTable/TADOQuery

2, Das Text-Property ist nur vom Typ String. Bei ADOExpress mußt du mit AsVariant arbeiten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
polondo

Registriert seit: 1. Sep 2005
84 Beiträge
 
#5

Re: wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 14:09
Wow dank dir für die schnelle Hilfe hat super funktioniert!! Müsste ich auch selber drauf kommen so das Problem zu lösen, zumal ich das AsVariant schonmal in meinen Programm benutzt habe.


mfg R.
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: wie kann man unicode aus der DB auslesen?

  Alt 31. Jul 2006, 14:59
Zitat von polondo:
Müsste ich auch selber drauf kommen so das Problem zu lösen, zumal ich das AsVariant schonmal in meinen Programm benutzt habe.
Was fragst Du dann?
Sven Harazim
--
  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 18:51 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