On Mon, 2 Dec 2002 16:28:32 +0100, "Tor Lund" <mistral@it.dk> wrote:
>problem 2: det egentlige problem er her. Jeg har en acces database med nogle
>data af værdien short time.
Det er ikke *værdien*, men *formatet* der er short time. I databasen
gemmes *værdier*, men de kan fremvises i forskelige *formater*.
Dvs., at når du udtrækker af databasen, så får du *værdier*. Formatet
kan så bestemmes i VB Script af dig - eller af default-indstillinger
på server eller i script.
Humlen er, at du ikke behøver bekymre dig om databasens format, hvis
du skal bruge værdierne i dit script. Derimod skal du sikre dig i dit
script, at det er *dig* der styrer formatet.
En god hjælp på vejen er - som Jens skriver - at styre landeformatet
(LCID) som Jens angiver.
<URL:
http://www.asp-faq.dk/article/?id=47>
Derudover kan du bruge FormatDateTime - se fx:
<URL:
http://html.dk/tutorials/asp/lektion4.asp>
Grunden til at jeg vader rundt i forsekllen mellem værdi og format er,
at det er en af de hyppigste fejl at få rodet det sammen
>To af disse data skal trækkes fra hinanden dvs.
>10:00 - 16:00. skulle jo så give en difference på 6 timer. er der nogen der
>kan give svaret
>jeg har prøvet at rode lidt med datediff, men det er vist ikke det rigtige
>værktøs at bruge
Jo, DateDiff er normalt det helt rigtige værktøj.
Syntaksen er:
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
- ignorér de to sidste, hvis ikke du arbejder med ugedage:
DateDiff(interval, date1, date2)
Hvis du trækker de to tider ud af databasen:
datDateTime1 = rs("felt1")
datDateTime2 = rs("felt2")
- får du:
DiffTimer = DateDiff("h", datDateTime1, datDateTime2)
Du kan også trække det ud direkte med SQL:
strSql = "SELECT DateDiff('h', felt1, felt2) AS DiffTimer FROM ..."
DiffTimer = rs("DiffTimer")
(Virker i MS Access - jeg har ikke så meget styr på MySql eller MS
Sql)
Fordelen ved at lave det direkte med SQL er, at du (om muligt) er
endnu mere uafhængig af evt. forskelle mellem dato-*formatet* mellem
db og script.
Good luck!
--
Jørn Andersen,
Brønshøj