Zitat von
Jelly:
Zitat von
shmia:
Diese Vorgehensweise hat mehrere Vorteile:
* man braucht nicht mit INSERT und UPDATE Anweisungen zuschreiben, die manchmal 50 Parameter benötigen
Wenn du 50 Felder hast, musst du auch so über deine Methode die einzelnen Felder füllen. Kürzer wird das nicht
Man braucht aber keine 50 Parameter hinschreiben, sondern kann bequem über die "Collection"
TFields arbeiten.
Also kann man auch eine Schleife von 0 bis Fields.Count-1 durchlaufen, um die Felder zu füllen.
Da man die Daten über TField schreibt, kann man auch vom OnSetText profitieren.
Zitat von
Jelly:
Zitat von
shmia:
kleiner Nachteil:
* es werden Daten abgefragt, die meistens gar nicht benötigt werden (aber nur ein Datensatz, macht ja nix)
Das gilt aber nur bei einem
select * from...
Du musst doch aber nicht alle Felder einbeziehen. Statt dem * wählst du nur die du brauchst.
Es müssen alle Felder, die die Eigenschaft NOT NULL besitzen, in der Feldliste aufgeführt werden, da sonst das Einfügen nicht funktioniert. Diese Felder werden also auch dann gelesen, obwohl man diese nur zum einfügen braucht. (da würde ich mir aber nur Gedanken drum machen, wenn Tausende Datensätze eingefügt/updatet werden sollen)
Aber du hast recht, wenn es Felder gibt, die nicht befüllt werden, kann man sparen, indem man alle benötigten Felder bei SELECT auflistet.