Usanktioneret datokonversion
Jeg bruger midlertidigt en access database til at testkøre et system inden jeg får det lagt over i en MS SQL database.Blandt de informationer jeg lagrer i databasen er der dato/tidsstempler i formatet: "DD-MM-YYYY 00:00". Det er også i dette format det kommer til at ligge i databasen, i et date field.
Så langt så godt. Når jeg nu forsøger at hive dato/tiden ud igen og f.eks. blot skriver det ud på skærmen ændrer vbscript det uden videre til formatet: "MM/DD/YYYY 00:00 AM". Både tid og dato ændres altså til amerikansk standard. Udover at dette selvfølgeligt er grimt, opstår der nogle helt andre praktiske problemer.
"28-05-2004 21:39" bliver til "5/28/2004 09:39 PM".
og
"03-05-2004 21:39" bliver til "3/5/2004 09:39 PM". <-- fejlkonvertering
Bemærk at dag/måned i det øverste eksempel står korrekt efter konverteringen, hvilket IKKE er tilfældet i det nederste eksempel. Der er væsentlig forskel på 3 maj 2004 og 5 marts 2004.
vbscript ændrer datoen til Amerikansk standard - og måned bliver til dag og omvendt når dagen i måneden er < 12 (og altså ikke kan være andet en dagen i dato/tidsstemplet).
Hvad kan jeg gøre for at få vbscript til at fortolke/konvertere datoen ud fra den korrekte dato/tidstype eller helt at undlade med at konvertere datoen? Jeg er fint tilfreds med datoen som den ligger i databasen - ASP'en skal bare lade være med at fortolke og konvertere den.