26. februar 2005 - 00:52Der er
7 kommentarer og 1 løsning
Store Dato problemer
Jeg har store dato problemer :-| jeg har Session.LCID = 1030 i toppen af min kode, men når jeg indsætter datoen i min SQL server bytter den rundt på datoen. F.eks. vises datoen 01-03-2005 fint på siden med response.write DateAdd("d", 3, date) men når jeg sætter den ind i databasen bliver den til 03-01-2005. help :-)
Når man bruger danske datoer og Access vil Access bytter rundt på måned. Problemet opstår fordi Access bruger US eller UK dato format via SQL, som enten er yyyy-mm-dd eller mm-dd-yyyy.
Når man så indsætter en dato i dansk dato format som er dd-mm-yyyy, vil Access bytte rundt på dag og måned i datoen.
Der er en løsning og det er at bruge dato funktionerne Year, Month og Day til at formatere din dato.
Jeg kender ikke ret meget til SQL server. Men det er nok i samme stil som med Access at den via SQL forvendter et specielt dato format yyyy-mm-dd eller mm-dd-yyyy. Databasen formatere så selv til det format kolonnen er sat til. Hvis du overføre din dato som:
03-01-2005 (mm-dd-yyyy) så bliver den rigtig også for dato hvor dagen er større end 12.
Hmm jeg sad lige og kiggede på det med friske øjne her til morgen :-) Hvis jeg indsætter i databasen med rs("dato") = DateAdd("d", 3, date) rs.update Gir det 01-03-2005 i databasen
men dato = "01-03-2005" rs("dato") = dato rs.update Gir det 03-01-2005 i databasen
Hvor imod dato = "01-03-2005" rs("dato") = "'" & dato & "'" rs.update gir det rigtigt altså 01-03-2005
Det må så være når sql serveren få en dato i tekst format, f.eks. fra en tekst boks, at serveren mener at den meget bedre ved hvordan datoen skal være end den der har indtastet den "¤#¤"%#&#&/()/&! Gud hvor jeg elsker microsoft en gang imellem :-)
Jeg fik løst mit problem på denne måde: datod = DateDiff("d",Date,request.form("dato")) rs("dato") = DateAdd("d", datod, date) Jeg ved ikke om det er den bedste, men det virker :-)
eagleeye> Ja det virker, og du får point, da det er noget letter at ændre kode til dit forslag, det kan jo gøres med en søg og erstat :-)
Synes godt om
Ny brugerNybegynder
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.