AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi TDataSet, TQuery -- wie auf Zellen zugreifen?
Thema durchsuchen
Ansicht
Themen-Optionen

TDataSet, TQuery -- wie auf Zellen zugreifen?

Ein Thema von Frederika · begonnen am 28. Jan 2009 · letzter Beitrag vom 30. Jan 2009
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Re: TDataSet, TQuery -- wie auf Zellen zugreifen?

  Alt 29. Jan 2009, 23:36
Zitat von Frederika:
... Wobei man scheinbar die Feldnamen irgendwoher wissen muß? ...
Ja und Nein
Du bekommst über TADOQuery auch die Feldnamen mitgeteilt, wissen musst du allerdings, was der Feldname bzw. das Feld/der Feldinhalt bedeuten soll
Mit dieser Funktion bekommst Du alle Feldnamen einer übergebenen Datenmenge geliefert. Als Parameter übergibst Du einfach Deine TADOQuery. Stör Dich nicht daran, dass Deine Abfrage ja gar nicht vom Typ TDataSet ist, diese wird aber davon abgeleitet und daher funktioniert das (OOP sei Dank).
Delphi-Quellcode:
// Akzeptiert als Parameter auch alles, was ein Nachfahr von TDataSet ist
// Beispiel-Aufruf:
// ShowMessage( ListFieldNames( ADOQuery1 ) );
function ListFieldNames( DataSet : TDataSet ) : string;
var
  FieldIndex : Integer;
begin
  Result := '';
  if
    DataSet.Active
  then // nur wenn die Datenmenge geöffnet ist!

    // Wir lesen jetzt mal alle vorhandenen Felder der Reihe nach aus
    for
      FieldIndex := 0 to DataSet.FieldCount - 1
    do
      begin

        // Ist nur für die Kosmetik
        if
          ( FieldIndex > 0 )
        then
          Result := Result + ';';

        // Hier passiert es jetzt
        Result :=
          Result +
          DataSet.Fields.FieldByNumber( FieldIndex ).FieldName; // <-- Da wird der Feldname geholt

      end;
end;
Zitat von Frederika:
... Für mein Projekt muß ich einfach nur die Ergebnisdatenmenge komplett in eigene Objektstrukturen umwandeln. Ich greife wohl also zeilenweise einfach auf alle Datensätze zu (Deine while-Schleife) und erzeuge dabei eigene Objekte, die ich dann wieder wie gewohnt handhaben kann. Schnell ans rettende Ufer sozusagen...
So hatte ich Dich in dem anderen Thread (ODBC und SP) auch verstanden
Zitat von Frederika:
Danke!
you're welcome
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  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 20:20 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