On 18 Dec 2006 20:46:51 GMT, john wengel <jwnospam@svend-es.dk> wrote:
>Hvis jeg i et script skriver: response.write date for jeg datoen
>12/18/2006
>
>Hvis jeg nu indsætter et datasæt i en Accessdatabase med date som
>en af posterne indsættes datoen som 18-12-2006
>
>Det giver problemer når jeg vil hente data igen hvis jeg bruger
>"date" som en parameter i et opslag.
Er du sikker (på at det giver problemer)?
>Hvad gør man ?
Man gør normalt det, at man ikke tager hensyn til dato-*formatet*, men
kun dato-*værdien*.
Når man så skal lave en forespørgsel, sørger man for kun at overføre
dato-*værdien* til databasen.
Fx (til MS Access):
strSql = "SELECT [Feltnavn(e)] FROM tblTabel" & _
" WHERE [dato-felt] = DateSerial(2006, 12, 18);"
Eksemplet forudsætter, at der ikke også er en tidsangivelse (altså at
tiden er 0:00:00 - i databasen). Ellers kan man bruge:
strSql = "SELECT [Feltnavn(e)] FROM tblTabel" & _
" WHERE Year([dato-felt]) = 2006 AND Month([dato-felt]) = 12" & _
" AND Day([dato-felt]) = 18);"
Se mere:
<url:
http://www.asp-faq.dk/article/?id=98>
- hvor der bla.a er en funktion, som omsætter en
(VBScript-ASP-)dato-værdi til en (VBScript-)SQL-streng.
Hvis du bogstaveligt mener, at du vil bruge Date, så brug
Date-funktionen i Access:
strSql = "SELECT [Feltnavn(e)] FROM tblTabel" & _
" WHERE [dato-felt] = Date();"
Good luck!
--
Jørn Andersen,
Brønshøj