Hej,
Borde det inte gå om du plusar på datumet 5 dagar?
Typ:
Date = Date() + 5
Eller blir det fel då?
Mvh
22 svar · 273 visningar · startad av Method
jag använder mig av denna sql-sats
SQL = "SELECT * From jobb WHERE datum >= date() ORDER BY ID DESC
när nån lägger upp ett jobb så skriver de in vilket datum de senast kan skicka in ansökan till jobbet, det datum använder jag för att de skall "försvinna" från sidan när det datumet har gått ut men jag vill att jobbet ligger kvar några dagar till efter att senast ansökningsdatum.
Vad skriver jag för variabel för att det skall ligga 5 dar efter utsatt datum?
tack på för hand
Jonas
Hej,
Borde det inte gå om du plusar på datumet 5 dagar?
Typ:
Date = Date() + 5
Eller blir det fel då?
Mvh
Har du provat
DateAdd("D",5,Date())
Lägger på 5 dagar på dagens datum.
vart lägger jag koden: DateAdd("D",5,Date())?????
Lägg till det när arbetsgivarna ska skriva sitt sista dag datumi databasen.
* Du ska väl ändå bara använda datumet till det.
jag e newbie och trött i huvudet vid denna tiden, kan du förklara lite närmare.
När folk lägger in datumet i databasen så anger de ett datum antagligen i formulär.
Istället för att bara lägga in det direkt i databasen så skriver man
datum = dateadd("d", 5, cdate(request.form("datum"))) och lägger in variabeln datum istället.
* Lite svårt att specifiera när jag inte har den blekaste hur du lägger in det i databasen.
på cyprus förslag så blir det datumet man skriver + 5 dagar, men jag vill ha at det står det datumet man skrev in för sista ansökningsdatumet men när man hämtar ur databasen med SQL frågan så skall det jobbet ligga kvar några dar extra.
Hoppas att Ni förstår vad jag menar
MVH
JOnas
SQL = "SELECT * From jobb WHERE dateadd("d", 5, datum) =< date ORDER BY ID DESC
Jag får följande fel:
Microsoft VBScript compilation error '800a0401'
Expected end of statement
/jobb/index.asp, line 64
SQL = "SELECT * From jobb WHERE dateadd("d", 5, datum) =< date ORDER BY ID DESC
-----------------------------------------^
SQL = "SELECT * From jobb WHERE dateadd('d', 5, datum) =< date ORDER BY ID DESC"
eller
SQL = "SELECT * From jobb WHERE dateadd(""d"", 5, datum) =< date ORDER BY ID DESC"
Nu fick jag (Ni) nåt nytt att bita i
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'dateadd('d', 5, datum) =< date'.
/jobb/index.asp, line 65
SQL = "SELECT * From jobb WHERE dateadd('d', 5, datum) [b]<=[/b] date ORDER BY ID DESC"
Jag skyller på Cyprys
Tja!
Har för mig att det inte blir bra om man skriver:
=< utan måste skriva <=
med risk för att jag turnerar...
r: hmm skrev nog samtidigt som LarsG
jörgen
man kan säga så här: det blev ett nytt fel
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/jobb/index.asp, line 65
Datum är inte riktigt bra att använda som fältnamn, vet ej ifall det beror på det, men prova klammra datum: [datum]
mvh Jörgen
Hej,
det går inte att skriva dateadd som SQL-kommando utan det är ett vbscript-kommando och det måste skrivas utanför SQL-strängen,
så prova att skriva så här istället:
SQL = "SELECT * From jobb WHERE datum>=" & dateadd('d', -5, date())& " ORDER BY ID DESC"
om du har en SQL-server som databas.
Har du access så måste du skriva så här:
SQL = "SELECT * From jobb WHERE datum>=#" & dateadd('d', -5, date())& "# ORDER BY ID DESC"
då hämtar den ut alla poster som har datumet för 5 dagar sen och större datum.
Lycka till!
/Jonas
Funktionen dateadd finns i ett flertal DBMS, däribland Sql Server, Sybase och Access (Jet). (Den skiljer sig dock något med avseende på syntax mellan dessa implementationer.)
Däremot så finns den inte med i SQL-standarden.
Ojdå...
Det är lätt att bli lite självgod ibland...
Men blir det inte enklare om man skriver ut datumet med vbscript...
Ja, ja enklare och enklare... det är det sättet jag hade gjort det på iaf.
Du kan ju prova, Method, och se om mitt sätt fungerar.
/Mvh Jonas