07. januar 2008 - 12:19
Der er
12 kommentarer og 1 løsning
Datoproblemer med Access
Jeg anvender nedenstående kode: strSQL = "DELETE FROM kalender WHERE s_startdato < #" & date() & "# and s_slutdato < #" & date() & "#" Som jeg vil mene, skulle fjerne alle records i s_startdato som ligger før date(), og s_slutdato som ligger før date(). Hvis jeg laver en record med datoer 12-12-2008, virker det fint. Hvis jeg derimod laver en 02-02-2008, så sletter den også denne. Er der nogen som kan hjælpe mig her?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
07. januar 2008 - 13:28
#1
Er du mon på jagt efter denne udgave i stedet: strSQL = "DELETE FROM kalender WHERE date() BETWEEN s_startdato AND s_slutdato" ...og nej, det er ikke en fejl at jeg har undladt "& date() &", da Access har en indbygget funktion til at finde datoen, hvilket er mere sikkert end at hente den fra scriptsprogets funktionsbibliotek.
07. januar 2008 - 13:32
#2
Hov! Den skulle vel ikke slette nogle af de 2 eksempler du kommer med da de begger ligger i fremtiden? Hvad er det helt præcist du gerne vil have sker?
07. januar 2008 - 14:05
#3
Jeg vil gerne, at den sletter de records hvor både s_startdato og s_slutdato ligger efter dags dato.
07. januar 2008 - 14:08
#4
OK, så ville jeg gøre sådan: strSQL = "DELETE FROM kalender WHERE date() < s_startdato AND date() < s_slutdato" under antagelse af at "efter" betyder i fremtiden... :)
07. januar 2008 - 14:09
#5
Men spørgsmålet er om din egen så ikke hele tiden har fungeret, da d. 2. februar 2008 jo stadig er i fremtiden (ligesom d. 12. december i år er det).
07. januar 2008 - 14:18
#6
Det er mig der vrøvler... undskyld! Det skal selvfølgelig være de records som FØR dags dato.
07. januar 2008 - 14:24
#7
OK, men det er så blot et spørgsmål om at vende operatoren: strSQL = "DELETE FROM kalender WHERE date() > s_startdato AND date() > s_slutdato"
07. januar 2008 - 14:36
#8
Har jeg prøvet... nu sletter den 12-12-2008 igen.
07. januar 2008 - 14:37
#9
Bruger denne: strSQL = "DELETE FROM kalender WHERE #" & date() & "# > s_startdato and #" & date() & "# > s_slutdato"
07. januar 2008 - 14:40
#10
Prøv at bruge min version...
07. januar 2008 - 14:43
#11
Den fungerer... Super! Laver du et svar?
07. januar 2008 - 14:50
#12
Velbekomme :)
07. januar 2008 - 15:00
#13
Tak for point :)
Kurser inden for grundlæggende programmering