Einzelnen Beitrag anzeigen

PASST

Registriert seit: 30. Mär 2005
Ort: Krefeld
325 Beiträge
 
Delphi 7 Enterprise
 
#1

TSQLQuery.Filter auf DateTime-Feld funktioniert nicht (mysql)

  Alt 17. Apr 2015, 12:10
Datenbank: MySQL • Version: 5.1 • Zugriff über: TMySQL51Connection
Hallo allerseits,
ich nutze Lazarus 1.2.6 unter Win7 x64 mit einer MySQL-Datenbank.

Ich möchte die Filter-Eigenschaft eines TSQLQuery nutzen. Dies funktioniert aber nicht bei einem Feld vom Datentyp DateTime. Der Filter funktioniert bei einem Feld vom Typ VarChar erfolgreich.

Ich habe bereits folgendes versucht:
Filter := 'date(Feldname)=curdate()';
Als Fehler erhalte ich zur Laufzeit: 'index based on unknown filed "date"'

Filter := 'Feldname>=' + QuotedStr('2015-04-17 00:00:00');
Fehlermeldung: 'index based on unknown filed ">="'

Verwende ich dagegen die obere Variante 'date(Feldname)=curdate()' als Bedingung im SQL.Text, so funktioniert alles wie gewünscht. Ich möchte allerdings die Filter-Eigenschaft verwenden, um nicht zur Laufzeit mit dem SQL.Text spielen zu müssen.

Hat jemand eine Idee?

Gruß,
Peter
  Mit Zitat antworten Zitat