Hallo.
spalte1 spalte2 Datum(eine spalte)
„text1a“ „text1b“ „15.10.2004 09:42:25“
„text2a“ „text2b“ „14.10.2004 11:20:41“
select * from tabelle where datum = #15/10/2004# auch schon
probiert…
Die Benennung „Datum“ (an Ende vielleicht sogar „Date“?) für eine Spalte ist eher Bäbä. Sollte eigentlich keine Probleme machen, aber wer weiß? Ansonsten müsste Deine SQL mit einer Änderung funktionieren :
Entweder
SELECT * FROM tabelle WHERE datum = #2004/15/10#;
oder
SELECT * FROM tabelle WHERE datum = DateValue(„15.10.2004“);
Das Ganze geht aber nur, wenn Du die Uhrzeit unberücksichtigt lässest. Zur Verdeutlichung : Der Gleichheitsoperator erwartet das Datum ohne Uhrzeit (oder mit der Uhrzeit 00:00:00; wie Du willi). Befindet sich eine Uhrzeit 09:08:13 im Datumsfeld, liefert die intern stattfindende Umwandlung keine Ganzzahl, sondern einen irgendwie aussehenden Dezimalbruch (38275 ist der 15.10.2004, 00:00 Uhr - 38275,63 ist der 15.10.2004, 15:03 Uhr). Beim Vergleich der Ganzzahl mit dem Istdatum findet er natürlich keine Gleichheit.
Wenn Du die Uhrzeit nicht eliminieren kannst, müsstest Du sie entweder in den Vergleich mit einbeziehen, oder Du bildest vor dem Vergleich jeweils einen ganzzahligen Wert. Damit wird Deine SQL-Klausel ein wenig anders, nämlich
SELECT * FROM tabelle WHERE CInt(Datum)=DateValue(„15.10.2004“);
Das sollte dann aber ohne zu knerbeln gehen.
Gruß kw