Hallo! > Mein SQL-String lautet > "SELECT Aupair.Herkunftsland, Aupair.Aktiv, > Aupair.LastModified FROM Aupair > WHERE datediff(dd,Aupair.LastModified," & > MyDateFormat(Left(Now,10)) & ")<15 > ORDER BY Aupair.Herkunftsland ASC;" > Die Funktion MyDateFormat bringt das Datum des heutigen > Tages (Now) auf die > Form tt.mm.jjjj . Die Funktion getdate, wie du es mir > geschriben hattest > ruft leider einen Fehler hervor. Der SQL-String sieht dann > folgenderma�en > aus: > > SELECT Aupair.Herkunftsland, Aupair.Aktiv, > Aupair.LastModified FROM Aupair > WHERE datediff(dd,Aupair.LastModified,16.10.2002)<15 ORDER BY > Aupair.Herkunftsland ASC; > > > Die Fehlermeldung lautet: > Microsoft JET Database Engine- Fehler '80040e14' > Syntaxfehler in Zahl in Abfrageausdruck > 'datediff(dd,Aupair.LastModified,16.10.2002)<15'. > > Wer kann mir weiterhelfen? Wahrscheinlich sit es wieder nur > ein kleiner > Trick und alles klappt wunderbar!?
GETDATE() ist eine Funktion von Transact-SQL und entspricht der Funktion NOW() in Jet-SQL. Wenn Du das Datum in den SQL-String einbringst, dann korrekt mit den Literalbegrenzern "#" (Jet-SQL) bzw. "'" (SQL-Server). Au�erdem ist DATEDIFF() auch eine Funktion in T-SQL und nicht in Jet-SQL. Die schnelle L�sung ist: SELECT ... FROM Aupair WHERE (NOW() - Aupair.LastModified) < 15 ORDER BY ... Auf keinen Fall w�rde ich ein Datumsliteral in den SQL-String einbauen, da dieses abh�ngig vom Gebietsschema des Servers gestatltet werden muss. Freundliche Gr��e Joachim van de Bruck | [aspdedatabase] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp
