Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#7

AW: Insert-Statement nicht verstanden

  Alt 7. Dez 2021, 01:23
Um die Verwendung im Code zu verdeutlichen:

Delphi-Quellcode:
Query1.SQL.Text := 'INSERT INTO Categories (CategoryName, Description, Picture) VALUES (:N, :D, :P)';
Query1.ParamByName['N'].AsString := 'New category';
Query1.ParamByName['D'].AsString := 'New description';
Query1.ParamByName['P'].AsInteger := $0334;
Query1.Execute;
Das würde genau das ausführen, was du in deinem Beispiel gezeigt hast. Die möglichen Vorteile wurden ja bereits von DeddyH genannt. Zudem empfinde ich es schlicht als besseren Stil Parameter zu nutzen, statt umständlich in Strings umgewandelte und ''gequotedte'' Ausdrücke zu nehmen.

Man könnte die Parameter allerdings noch sprechender benennen für meinen Geschmack. Auch kann man sie statt mit ParamByName() indiziert via Params[i] referenzieren, finde ich aber nicht so schön, da dann die Reihenfolge im SQL-Statement wichtig wird. Man kann übrigens auch denselben Parameter mehrmals im selben SQL-Statement verwenden, was in manchen Fällen auch praktisch sein kann.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat