Avatar billede lund_dk Praktikant
14. september 2005 - 19:30 Der er 8 kommentarer og
1 løsning

Forket datoformat

hej.

Har et inputfelt hvor jeg via en datopicker vælger en dato
eks. 12-09-2005

gemmer den således: rs("B_besogDato") = Request("B_besogDato")

Når jeg så gemmer til access databasen, så gemmer den således: 09-12-2005, hvilket jo er forkert.

Og har selvfølgelig smidt denne på også:
session.LCID = 1030

feltet i access databasen er datofelt.

hvordan får jeg den til at gemme det korrekt ?
Avatar billede softspot Forsker
14. september 2005 - 21:08 #1
Vend datoen rundt, så formatet bliver til yyyy-mm-dd i stedet, det kan databasen finde ude af :)
Avatar billede lund_dk Praktikant
14. september 2005 - 21:12 #2
problemet er opstået i forbindelse med at mit script er rykket på ny server, og der allerede i databasen er oprettet over 6000 poster.

Så kan ikke bare lige lave alle datoerne om.
Avatar billede softspot Forsker
14. september 2005 - 21:16 #3
Jeg tænkte nu på når du forspørger på data, f.eks.


SELECT * FROM tabel WHERE dato = #2005-09-14#
Avatar billede busschou Praktikant
14. september 2005 - 23:01 #4
problemet opstår imellem asp/sql/access , Hvis du skriver i dd-mm-yyyy format så sker der det at det undervejs vil forsøges blive fortolket som mm-dd-yyyy format. Problemet er blot at dette ikke er konsekvent tag en dato som 23-07-2005 det vil ikke blive tolket som 07-23-2005 fordi denne ikke findes og det vil derfor blive tolket som du forventer, mens en dato som 08-09-2005 vil blive vendt om da datoen 09-08-2005 eksisterer
Problemet kan undgåes ved som softspot siger at benytte formatet yyyy-mm-dd som aldrig bliver misforstået, men benyt det konsekvent, både ved Inset, Update og Select :o)
Avatar billede lund_dk Praktikant
25. september 2005 - 19:10 #5
Hvad jeg gør jeg nu? når jeg allerede har de 6000 poster registeret med det datoformat?
Avatar billede softspot Forsker
25. september 2005 - 22:16 #6
Du skal ikke gøre noget ved dine data i databasen for datoformatet er ikke noget der knytter sig til data, men til den måde data bliver fortolket når de bliver trukket ud af databasen. Det vi forsøgte at sige var at du skal fortolke dine datoer på en global gangbar metode, nemlig ved at angive dine datoer efter år-måned-dag formatet, for så vil systemet højst sandsynligt fungere uanset hvilket sprog serveren kører med...

dvs. når du trækker data ud med et datofelt, hvor du skal bruge datoen som kriterie, så skal du spørge med yyyy-mm-dd
Avatar billede lund_dk Praktikant
12. januar 2006 - 20:51 #7
Må hellere få lukket, ligger du et svar ?
Avatar billede softspot Forsker
13. januar 2006 - 10:40 #8
Ja... :)
Avatar billede softspot Forsker
13. januar 2006 - 11:04 #9
Tak for 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