Entwickler-Ecke

Datenbanken - ADOQuery mit mehreren gleichen Parametern


schnief7 - Mo 13.01.03 00:09
Titel: ADOQuery mit mehreren gleichen Parametern
Hallo!

Hab da ein kleines Problem und weis nicht weiter!

Ich habe eine ADOQuery mit einem SQL-Befehl z.B.:


Quelltext
1:
2:
3:
select *
from aufenthalte
where anreise=:tag or abreise=:tag


nun will ich über
ADOQuery.Parameters.ParamByName('tag').Value:='16.05.2003';
dem parameter einen Wert zuweisen (parameter 'tag' existiert - allerdings nur ein mal)

Jetzt bekomme ich immer die Fehlermeldung:

Für mindestens einen erforlderlichen Parameter wurde kein Wert angegeben.

Was kann ich machen??

Danke


LCS - Mo 13.01.03 08:58

Hi
Auch wenn das für dich zwei mal dasselbe ist, für die Query sind es zwei Parameter die zu füllen sind. Auch wenn sie zufälligerweise den gleichen Namen haben. Du könntest die Zuweisung mal so versuchen:

Quelltext
1:
2:
3:
4:
with ADOQuery do begin
  Parameters[0].Value := '16.05.2003';
  Parameters[1].Value := '16.05.2003';
end;


Gruss Lothar


schnief7 - Mo 13.01.03 11:58

Geht das nicht anders??

im beispiel sinds ja nur 2 aber in meiner richtigen abfrage kommen mehrere parameter bis zu 5 mal vor
und wenn ich da jeden einzeln über den index und nicht über den namen zuweise, schleichen sich da ganz leicht fehler ein (denk ich)

gibt es keine andere lösung ?? (ohne parameter)

danke