Radera efter dagens datum
41 svar · 1 451 visningar · startad av Biasse · sida 2 av 3
Skriptet kör igenom men jag har en händelse inskriven 2008-02-23 som inte vill raderas.
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbnamn
SQL = "select count(*) from kalender where datum > dateadd('d', -1, date())"
Conn.Execute(SQL)
Conn.Close
Set Conn = Nothing
%>
Kör frågan direkt i Access så får vi se vad frågan returnerar.
Är det nått skumt med att det handlar om ett händelse datum och inte skapar datum? Men det ska väl fungera bara kolumnen datum är satt som datum/tid
Koden fungerar aldrig utan brädgårdar:
SQL = "select count(*) from kalender where datum > #" & dateadd("d", -1, date()) & "#;"
***
Du ska skilja på ASP och SQL.
dateAdd i SQL = enkelfjumpar = '
dateAdd i ASP = dubbelfjumpar = "
Nu är jag inte med.. köra i access.. hur gör man
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/diggers/kalender/5_sista.asp, line 9, column 64
SQL = "select count(*) from kalender where datum > #" & dateadd('d', -1, date()) & "#;""
Ja nu kör den igenom men 2008-02-23 posten är kvar
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbnamn
SQL = "select count(*) from kalender where datum > #" & dateadd("d", -1, date()) & "#;"
Conn.Execute(SQL)
Conn.Close
Set Conn = Nothing
%>
Jag har redigerat inlägget ovan. Kör
select count(*) from kalender where datum > dateadd('d', -1, date())
...genom att dubbelklicka på "Skapa en fråga i designläge", stänga det fönster som visas, klicka på SQL-ikonen bredvid spara-knappen, klistra in frågan och klicka på det röda utropstecknet i menyraden.
Ska installera access 2003... i denna nya hittar jag inte testar snart
Kör detta i stället:
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbnamn
SQL = "select count(*) from kalender where datum > dateadd('d', -1, date())"
set RS = Conn.Execute(SQL)
response.write rs(0)
rs.close
Conn.Close
Set Conn = Nothing
Kanske din databas är skadad???
För en så lätt fråga ska du inte ha så mycket bekymmer med...!!
Kolla i så fall: Verktyg --> Databasverktyg --> Komprimera och reparera databas
Eclipse: Det finns ingen anledning att anropa dateadd i ASP i detta fall. Du behöver inte blanda in # öht.
Det intressanta är resultatet av
select count(*) from kalender where datum >= dateadd('d', -1, date())
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbnamn
select count(*) from kalender where datum >= dateadd('d', -1, date())
Conn.Execute(SQL)
Conn.Close
Set Conn = Nothing
%>
ger
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03FD)
'Case' förväntas.
/diggers/kalender/5_sista.asp, line 9, column 7
select count(*) from kalender where datum >= dateadd('d', -1, date())
Jag har reparerat mdb nu oxo
Se inlägg #33 :)
Det blir nån skum vit rand ovanför med en 3:a i men den sega posten är kvar
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbnamn
SQL = "select count(*) from kalender where datum > dateadd('d', -1, date())"
set RS = Conn.Execute(SQL)
response.write rs(0)
rs.close
Conn.Close
Set Conn = Nothing
%>
Så med den kod du postade i det första inlägget tas inte posten med datumet 2008-02-23 bort?
Den första jag har i inlägg 1 raderade allt i databasen så den är den enda hittills som raderat alls :)
