![]() |
Datenbank: dBase • Zugriff über: BDE + TQuery
Parameter not set in Query String
Delphi-Quellcode:
Ich möchte, dass Daten ausgelesen werden, wo sich datum_hw zwischen VON und BIS befindet.
Query5.Close;
Query5.SQL.Text := 'SELECT * FROM "AB'+sj+'"'; Query5.SQL.Add('WHERE :datum_hw BETWEEN VON AND BIS'); Query5.SQL.Add('ORDER BY NAME ASC, STUNDEN ASC'); Query5.ParamByName('datum_hw').Value := IntToStr(DateTimeToUnix(today)); Query5.Open; Allerdings bekomme ich dann die oben genannte Fehlermeldung. Was mache ich falsch? |
Re: Parameter not set in Query String
Sorry hab nicht ganz verstanden was du haben möchtest: einen Datumswert (Param) innerhalb von zwei Datumswerten (Feldern) oder einen Datumswert (Feld) über zwei Datumswerte ermitteln?
Bei deinem Beispiel muss der Wert vor 'between' das Feld sein und nach 'between' sollte der Abfragebereich stehen. Hmm, ich bin aber nicht sicher, ob die BDE die Syntax über dBase-Tabellen zulässt.
Delphi-Quellcode:
[...]
Query.SQL.Add('Select * from ...'); Query.SQL.Add(' where (Von <= :Wert) and (Bis >= :Wert)'); Query.ParamByName('Wert').AsInteger := DateTimeToUnix...
Delphi-Quellcode:
[...]
Query.SQL.Add('Select * from ...'); Query.SQL.Add(' where (Feld >= :Von) and (Feld <= :Bis)'); Query.ParamByName('Von').AsInteger := DateTimeToUnix... Query.ParamByName('Bis').AsInteger := DateTimeToUnix... // bzw. [...] Query.SQL.Add('Select * from ...'); Query.SQL.Add(' where (Feld between :Von and :Bis)'); Query.ParamByName('Von').AsInteger := DateTimeToUnix... Query.ParamByName('Bis').AsInteger := DateTimeToUnix... |
Re: Parameter not set in Query String
Ja, ich war mir da auch nicht so wirklich sicher, wie ich das machen soll.
Er soll nämlich Daten abrufen, bei dem das jeweiligen Datum zwischen VON und BIS liegt. |
Re: Parameter not set in Query String
Dein Ansatz hätte aber das Feld parametrisiert
|
Re: Parameter not set in Query String
Parametri..was? oO
|
Re: Parameter not set in Query String
Zitat:
|
Re: Parameter not set in Query String
Ich probiers mal eben aus. ;)
|
Re: Parameter not set in Query String
Type mismatch in expression :/
|
Re: Parameter not set in Query String
Zeig mal den aktuellen Code und wo der Fehler auftritt.
|
Re: Parameter not set in Query String
Delphi-Quellcode:
Query5.Close;
Query5.SQL.Text := 'SELECT * FROM "AB'+sj+'"'; Query5.SQL.Add('WHERE (:datum_hw >= VON AND :datum_hw <= BIS)'); Query5.SQL.Add('ORDER BY NAME ASC, STUNDEN ASC'); Query5.ParamByName('datum_hw').AsInteger := DateTimeToUnix(today); Query5.Open; <~~~ dort tritt der Fehler dann auf |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz