Avatar billede getaway Nybegynder
02. juli 2001 - 11:35 Der er 5 kommentarer og
1 løsning

Fjern post efter xx dage (DB) #2

Hej igen ....

Tjaaa, jeg fik det hele til at virke med et par rettelser, men var selvfølgelig så smart at tilintetgøre det hele bagefter ved en fejl :-(

Såe...
Jeg skal fjerne nogle poster efter at de har overskredet en dato der står i en db. Posten med datoen hedder \"Remove\" ! Posterne bliver ikke fjernet helt, men bliver afmarkeret i et flet der hedder \"Show\", med udtrykket \"False\"
Så langt så godt...
SQL-strengen virker fint, men \"fjerner\" (dvs. afmarkerer) desværre ALLE !

SQL-strengen ser sådan ud :
strSQLDef3 =  \"UPDATE news SET Show = False WHERE (Remove > \" & date() & \");\"

Med venlig hilsen
getaway
Avatar billede nute Nybegynder
02. juli 2001 - 11:44 #1
du skal beregne differansen mellom de to datoene. Det kan du gjøre ved å benytte DATEDIFF:

UPDATE news SET Show = False WHERE DATEDIFF(day, Remove, \" & date() & \") > 0


/nute
Avatar billede getaway Nybegynder
02. juli 2001 - 11:49 #2
Desværre, det virker ikke...

Too few parameters. Expected 1.
Avatar billede getaway Nybegynder
02. juli 2001 - 12:07 #3
Andre bud ?
Avatar billede kichian Nybegynder
02. juli 2001 - 12:20 #4
Dette er en klassisk fejl med datoer. Brug altid databasens egne datofunktioner til datosammenligning og indsættelse. Hvis du ikke lige styrer disse, så brug SQL92 syntax #mm/dd/yyyy hh:mm:ss#.

UPDATE news SET Show = False WHERE (Remove < Now())

Dette gælder for access.

På SQL Server, Oracle og alle de andre skal du bruge deres tidsfunktion.
Avatar billede kichian Nybegynder
02. juli 2001 - 12:21 #5
Bemærk at jeg antager at dit remove-felt er et datofelt.
Avatar billede getaway Nybegynder
07. august 2001 - 15:53 #6
Jeg havde sq helt glemt det.... her er dine point !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester