30. september 2001 - 13:41Der er
5 kommentarer og 2 løsninger
Find dato i database
jeg skal finde følgende dato i databasen(Access): 10-10-2001 i feltet \"Dato\" med datatypes \"Dato/Time\"
Umiddelbart ville jeg som tidligere forsøge vha. følgende: --------------------------------- WHERE [Dato] = #10-10-2001# ---------------------------------
men det virker bare ikke! Hvis jeg i stedet gør følgende: --------------------------------- WHERE Day([Dato]) = Day(\"10-10-2001\") AND Month([Dato]) = Month(\"10-10-2001\") AND ...... ---------------------------------
Så kan jeg godt finde \"rækken\". Er det fordi der er rod med Dansk/Engelsk datoformat?
Jeg var også ude for, hvis jeg testede det på MS SQL server, så fik jeg en fejl når jeg sammenlignede Datoen og brugte #10-10-2001# i stedet for kun 10-10-2001. Hvorfor vil den ikke det?
# rundt om datoer er en Access specifik ting, der ikke bruges i SQL Server.
Problemet kan sagtens skyldes dansk/amerikansk datoformat. Datoformatet i USA er MDY, så det burde faktisk virke på datoen i dit eksempel.
Personlig bruger jeg altid YMD i mine selects uden problemer. Du kan prøve med WHERE [Dato] = #2001-10-10#. Eller alternativt kan du prøve med \"/\" i stedet for \"-\", d.v.s. eks. #10/10/2001#.
Jeg har også haft problem med Access og jeg er kommet til at i SQL sætningen til Access bliver datoen tolket som mm-dd-yyyy og ikke dd-mm-yyyy som man skriver. Jeg har før benyttet en omregning brugte dato\'en: datostr = month(date()) & \"-\" & day(date()) & \"-\" & year(date())
Du kan også gøre noget i stil med: \"SELECT * FROM tabel WHERE Fotmat(dato,\'dd-mm-yyyy\')=#\"&dindato&\"#;\"
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.