Avatar billede sln Nybegynder
03. juni 2000 - 11:05 Der er 6 kommentarer og
2 løsninger

Søgning mellem 2 datoer

Jeg har ikke kunnet finde svar blandt tidligere spørgsmål, så her er endnu ét om datoer i Access.

Efter at mine ASP-sider er lagt på vort Intranet er der gået koks i søgninger mellem 2 datoer. Dato-feltet i DB er i Kort Datoformat og havner også således i felterne altsÅ (dd-mm-åååå)

Når jeg søger og indskriver søgedatoer i dette format f.eks. ( DAG BETWEEN #04-05-2000# AND # 18-05-2000 # ) får jeg alt op til 18-05-2000.

Laver jeg om på indskrivningsformatet i søgeformularen til MM-DD-ÅÅÅÅ f.eks.
( Dag BETWEEN #05-04-2000# AND # 05-18-2000 # ) laves der en korrekt søgning.

Et eller andet sted undervejs ændres datoformatet tilsyneladende.


Indskriver jeg f.eks. 05-05-2000 som FraDag ( TilDag sættes aut. til DATE() )bliver søgestrengen ( Dag BETWEEN #05-05-2000# AND # 03-06-00 # ).
Resultatet bliver dog alt mellem 6.marts. og 5. maj.

Kan nogen knække den?

SLN


Avatar billede sa Nybegynder
03. juni 2000 - 12:01 #1
Er scriptet blevet langt over på en anden fysisk server?
Avatar billede phylox2 Nybegynder
03. juni 2000 - 18:03 #2
#05-04-2000# <= Dag <= # 05-18-2000 #

Ville jeg foreslå!
Avatar billede sln Nybegynder
05. juni 2000 - 01:28 #3
til sa: Ja

Avatar billede runesoft Nybegynder
05. juni 2000 - 09:34 #4
Hvad med at lave datoformatet om til det amerikanske i dit script?
sæt <% session.LCID = 1033 %> ind i toppen af dit script.
Avatar billede philiph Nybegynder
08. juni 2000 - 19:44 #5
Dette har jeg svaret på mindst 3 gange før, men here we go again:

Når en datosøgning foretages direkte i SQL, SKAL datoerne være på formatet mm-dd-yyyy. Det er lige meget hvilken version/sprogversion der benyttes, eller hvordan serverens eller klientens datoinstillinger er sat op.

Til dem der straks himler op om at det ikke passer: Prøv dette:
- Lav en ny query.
- Vælg en tabel der har et dato felt.
- Dobbeltklik på datofeltet (så det kommer ned i felt listen).
- Sæt kriterie på feltet: #01-02-2000#
- Skift til SQL visning.

I vil nu se at Access har rettet udtrykket til:
(((tabel.feltnavn)=#2/1/2000#))

Overbevist?

Derfor skal datoer formatteres med udtrykket:
"#" & Format(Dato,"mm\/dd\/yyyy") & "#"

Philip
Avatar billede sln Nybegynder
09. juni 2000 - 16:35 #6
Til runesoft og philiph.

Tak for jeres bidrag. Tilsammen løste det mit problem, som OGSÅ bestod i at DATE() til at indgå i SQL-sætningen i det korrekte format. Beklager philiph, men jeg fandt først senere dine tidligere svar. Har også imellemtiden også fundet et sted i en manual, hvor det udtrykkeligt er beskrevet at forespørgsler på datoer skal være i mm/dd/åå format.
Avatar billede sln Nybegynder
25. august 2000 - 11:41 #7
Jeg er blevet opfordret til at forholde mig,  acceptere/afvise svarene. For få øjeblikke siden accepterede jeg svarene fra runesoft og Philiph, men til min store overraskelse står der nu, \"Afvist svar fra sln\" ???????????  Jeg mente iøvrigt at jeg havde gjort det forlængst d. 9.juni.
Avatar billede sa Nybegynder
25. august 2000 - 12:01 #8
Vel, det vigtigste er vel, at spørgsmålet ikke længere står åbent...
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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