Thema: Delphi IN-String als Parameter?

Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

Re: IN-String als Parameter?

  Alt 25. Apr 2005, 13:40
Hi Igotcha,

hierbei handelt es sich um sogenannte Substitution-Parameter oder -Variablen, die du benötigst, das heißt, der Wert, den du in den Parameter einträgst, wird im SQL ersetzt.
Damit wäre zum Beispiel dann Folgendes theoretisch möglich (wenn die Datenbank geschachtelte SELECTs unterstützt):
Delphi-Quellcode:
ZQuery.SQL.Text := 'SELECT * FROM Werte WHERE Wert IN (:Wert)';
with ZQuery.ParamByName('Wert') do
begin
  Value := 'SELECT Wert FROM AndereWerte WHERE Wert > 0';
  ParamType := ptSubst; // gibt's (noch) nicht...
end;
Leider unterstützen die Zeos-Komponenten diese Art der Parameter im Moment (noch) nicht.

Eine Möglichkeit ohne das - wie ich finde - von der Optik unschöne Verketten von Strings wäre:
ZQuery.SQL.Text := Format('SELECT * FROM Werte WHERE Wert IN (%s)', [Wert]); MfG
Stevie
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat