Avatar billede the-gnu.dk Nybegynder
16. maj 2002 - 17:06 Der er 9 kommentarer og
1 løsning

Igen WHERE

Jeg har lige et problem mere med mit "dd:mm:yy-mm:tt"-fejl i databaseb.

Overvejer lidt at lave den til DATETIME, men det vil give en hel del tilretningsproblemer.

Jeg har f.eks. "16:05:02-17:05" (nu) i databasen. Derefter vil jeg så gerne have slettet alt det, der er for gammelt i databasen. Dvs. alt hvor dato, måned og år er ældre end nu.

Nogen der har et forslag ? Den er riiiimelig tricky
Avatar billede hansk Nybegynder
16. maj 2002 - 17:48 #1
Hvis det er det samme tekstfelt fra før, kan du slette således:

WHERE felt < Cstr(now())  - hvis feltet er et tekstfelt
Avatar billede tipsen Nybegynder
16. maj 2002 - 17:55 #2
DELETE * FROM tabel WHERE (SUBSTR(YEAR(NOW()),1,2) > SUBSTR(dato,7,2)) OR
(SUBSTR(YEAR(NOW()),1,2) = SUBSTR(dato,7,2)) AND MONTH(NOW()) > SUBSTR(dato,4,2)) OR
(SUBSTR(YEAR(NOW()),1,2) = SUBSTR(dato,7,2) AND MONTH(NOW()) = SUBSTR(dato,4,2) AND DAYOFMONTH(NOW()) > SUBSTR(dato,1,2))

Et lille problem kan være, hvis MySQL ikke automatisk typecaster - eller den gør det forkert!

Jeg vil klart anbefale dig, at ændre det (rådne) dato-format :-)
Avatar billede the-gnu.dk Nybegynder
16. maj 2002 - 17:59 #3
Hansk > You have an error in your SQL syntax near '(now())' at line 1
Avatar billede the-gnu.dk Nybegynder
16. maj 2002 - 18:01 #4
tipsen > You have an error in your SQL syntax near '(YEAR(NOW()),1,2) > SUBSTR(dato,7,2)) OR (SUBSTR(YEAR(NOW()),1,2) = SUBSTR(dato' at line 1
Avatar billede hansk Nybegynder
16. maj 2002 - 18:23 #5
Okay.
Så prøv denne her:

WHERE felt < Mid$(now(),1,8)
Avatar billede tipsen Nybegynder
16. maj 2002 - 19:02 #6
har du rettet "dato" til navnet på det felt, hvor datoen ligger i?
Avatar billede tipsen Nybegynder
16. maj 2002 - 19:03 #7
og så skal det også være "DELETE FROM tabel" - dvs. uden "*"
Avatar billede the-gnu.dk Nybegynder
17. maj 2002 - 14:19 #8
Nej, det virker heller ikke, Tipsen
Avatar billede the-gnu.dk Nybegynder
17. maj 2002 - 14:20 #9
Jeg laver den om til datetime :o( ... og lukker...
Avatar billede tipsen Nybegynder
17. maj 2002 - 16:18 #10
Det lyder smart - en anden gang vil det være rart, hvis man fik at vide, hvad problemet er når man har lavet noget man tror virker - det er meget utilfredsstillende at få at vide at noget er forkert, men ikke hvad det er!
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
Computerworld tilbyder specialiserede kurser i database-management

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