Einzelnen Beitrag anzeigen

mewlos26

Registriert seit: 17. Okt 2005
13 Beiträge
 
Delphi 7 Professional
 
#1

Datumsabfrage mit Access DB über Jahreswechsel

  Alt 24. Okt 2005, 12:30
Datenbank: Access 2002 • Version: 10.0 • Zugriff über: ADO
Hallo,

ich möchte mit folgendem Source Code Zeiträume über ADO under Jet Engine abfragen. Zeiträume innerhalb eines Jahres z.B. 01.01.2005 bis 20.03.2005 sind kein Problem. Ein Zeitraum der über ein Jahr geht z.B. 10.11.2004 bis 10.03.2005 wird nicht angezeigt. Woran kann das liegen? Muss man das Datum noch mal aufsplitten in Tag, Monat, Jahr? Wenn ja wie muss ich den Source Code abwandeln?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  StartDatum: String;
  EndeDatum : String;
begin
  DateSeparator := '/'; // ACHTUNG! hier wird eine globale Variable geändert
  StartDatum := FormatDateTime('#mm/dd/yyyy#', DateTimePicker1.Date);
  EndeDatum := FormatDateTime('#mm/dd/yyyy#', DateTimePicker2.Date);

  Query1.Close;
  Query1.SQL.Clear;
  Query1.SQL.Add('select * from datum001');

  // vereinfachte Version:
  Query1.SQL.Add(' where VonDatum <=' + StartDatum);
  Query1.SQL.Add(' and BisDatum >=' + EndeDatum );

  // Version mit “between”:
  //Query1.SQL.Add(' where (VonDatum between ' + StartDatum + ' and ' + EndeDatum + ')');
  //Query1.SQL.Add(' and (BisDatum between ' + StartDatum + ' and ' + EndeDatum + ')');
  Query1.Open;
end;
  Mit Zitat antworten Zitat