Einzelnen Beitrag anzeigen

nachtstreuner

Registriert seit: 21. Aug 2005
Ort: ESA
104 Beiträge
 
Delphi XE2 Professional
 
#1

SQL ABfrage von Datum Zeit bis Datum Zeit über mehrere Tage

  Alt 15. Apr 2006, 17:44
Datenbank: Absolute Database • Version: 5.04 • Zugriff über: ABS.Query Komponente
Hallo !

Ich möchte mit einer SQL-Abfrage alle Datensätze haben, die zwischen vonDatum vonZeit und bisDatum bisZeit liegen.

Im Formular gibt es 6 Eingabemöglichkeiten:

vonDatum : DateTimePicker
bisDatum : dateTimePicker

vonDatumVonZeit : maskEdit liefert einen String
vonDatumBisZeit : maskEdit ....

bisDatumVonZeit : maskEdit ....
bisDatumBisZeit : maskEdit ....

in der Datenbank habe ich ein Feld Datum Typ Date und ein Feld ZEIT typ String.

Wie müsste der SQL Befehl aussehen, damit ich alle Datensätze erhalte, die zwischen dem

03.03.2006 / 02:00:00 Uhr und dem
04.03.2006 / 03:00:00 Uhr liegen ?

Ich habe es folgendermassen probiert :
Delphi-Quellcode:
SQL_TEXT := SQL_TEXT +
       ' Where (DATUM >= :voDatum and Zeit >=:vonZeit) '+
       'and (DATUM <= :biDatum and ZEIT <=:bisZEIT)';
       cxMemo.Lines.Add(SQL_TEXT);
       ABSQuery.SQL.Add(SQL_TEXT);
       with ABSQuery.Params do begin
            ParamValues['voDatum'] :=DateToStr(vonDatum.Date);
            ParamValues['vonZeit'] :=edVonDatvonZeit.Text;
            //ParamValues['vonLeer'] :='23:59:59';
            ParamValues['biDatum'] :=DateToStr(bisDatum.Date);
            //ParamValues['bisLeer'] :='00:00:00';
            ParamValues['bisZEIT'] :=edbisDatbisZeit.Text;
       end;
Hier erhalte ich aber nur Datensätze, die vom 03.04.2006 ab 02:00:00 bis 03:00:00 liegen.
Was stimmt hier nicht ?
Alles wird gut -
  Mit Zitat antworten Zitat