Einzelnen Beitrag anzeigen

Ulf346C

Registriert seit: 15. Okt 2003
Ort: Magdeburg
84 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#5

Re: 100 x Fieldvalue durch Fieldbyname erstetzen?

  Alt 22. Mär 2006, 09:44
Du greifst über die Spaltennummer zu

In einer SQL-Umgebung (und nicht nur da) ist es schon angebracht, die Datenfelder über den Feldnamen anzusprechen.
Sonst nimmst du dir die Möglichkeit, z.B. an der Struktur der Tabelle nachträglich etwas verändern zu können.

bei MySQL kann man im Prinzip alles per .asString machen. Die reine Lehre ist das aber nicht.
Delphi bietet die viel schönere Variante .asVariant, die ist in jedem Fall zu bevorzugen, wenn deine SQL-Implementation das unterstützt. Mit ZEOS geht das.

Wenn du einigermaßen Bombensicher Datensätze kopieren willst ohne die Feldnamen zu verwenden, nimm

Delphi-Quellcode:
var i: integer
    t: string;

for i := 0 to (tabelle1.fieldcount -1) do begin
  t := tabelle1.fields[i].fieldname;
  if not (tabelle2.findfield(t) = nil)
  then tabelle2.fieldbyname(t).asVariant := tabelle1.fieldbyname(t).asVariant
end;
  Mit Zitat antworten Zitat