Ich bin sehr neu in Delphi und habe den folgenden Code erhalten (habe einige irrelevante Teile weggelassen), für den ich versuche zu verstehen, was er tut:
%Vor%In einer anderen Datei wird diese Abfrage verwendet, aber ein Parameter, der in der Abfrage nicht definiert ist, wird hinzugefügt.
%Vor% Ändert dieser Parameter 'part'
irgendetwas an der getroffenen Auswahl? Mit anderen Worten: Wird die SQL-Abfrage automatisch in die folgenden geändert?
Das bedeutet, dass die SQL-Anweisung zur Laufzeit möglicherweise geändert wird. Wenn diese Abfrage verwendet wird, enthält die SQL-Datei bereits AND part = :part
.
Wenn die SQL-Anweisung diesen zusätzlichen Parameter part
nicht enthält, wird beim Zuweisen von ParamByName('part').Value := 1
eine Exception ausgelöst.
Ich nehme an, Sie haben SelectCosts
reference nicht verwechselt (das ist in DM_HRV
und nicht in anderen DM).
Die folgende Anweisung in Ihrem Beitrag fügt keinen Parameter hinzu, sie legt ihren Wert fest:
%Vor%Um einen Parameter zur Laufzeit hinzuzufügen, verwenden Sie CreateParam wie folgt:
%Vor%Die Abfrage wird nicht automatisch geändert, Sie müssen das selbst tun.
In Ihrem ersten Snip sind ParamType und InputType nicht definiert. Sie können dies in der IDE ändern, indem Sie auf den Eigenschafteneditor der Parameterliste (Params) zugreifen und diese Werte aktualisieren.
Das Hinzufügen eines neuen Parameters ändert die Abfrage nicht. Das musst du selbst tun.
Tags und Links delphi parameterized-query