Avatar billede geertf Nybegynder
29. marts 2004 - 13:49 Der er 20 kommentarer og
2 løsninger

Forespørgsel fejler ved bestemte kriterier (Access97)

I Access97 laver jeg en Qry, der ved hjælp af CPR-nr henter alle brugere over 40 og som har en bestemt status. nu er der sådan, at jeg har fået nisser i min db, for når jeg status er "1" som nedenfor, så fejler Qry'en. Ændre jeg værdien for status til "2" eller "3", så går det fint. Hvilken nisse taler vi om her, og hvordan uddriver jeg den?

**************
SELECT CDate(IIf(CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2))<=Date(),CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2)),DateAdd("yyyy",-100,CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2))))) AS Fødselsdato
FROM Tbl_Brugere
WHERE (((CDate(IIf(CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2))<=Date(),CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2)),DateAdd("yyyy",-100,CDate(Mid([CPR],1,2) & "/" & Mid([CPR],3,2) & "/" & Mid([CPR],5,2))))))>DateAdd("yyyy",-40,Date())) AND ((Tbl_Brugere.StatusID)=1));

********
(Ivrige og opmærksommme brugere af stedet her, vil i øvrigt kunne genkende dele af koden.)

Håber nogen kan hjælpe.
Hilsen
Geert
Avatar billede geertf Nybegynder
29. marts 2004 - 13:50 #1
Uh-ja, jeg burde fortælle at jeg får en "Data type mismatch in criteria expression".
Avatar billede terry Ekspert
29. marts 2004 - 14:05 #2
geertf>Are you saying that you get a "data type mismatch" when you use StatusID = 1
?
Avatar billede hekla Nybegynder
29. marts 2004 - 14:39 #3
Kunne det være et forkert CPR-nummer (ugyldig dato) for en bruger med statusID = 1 ?
men den burde vist også komme når man forespørger på de andre statusID
Avatar billede geertf Nybegynder
29. marts 2004 - 14:59 #4
Terry>Ja, det er det jeg siger. StatusID er også primær-nøgle i Tbl_StatusForBruger, men det skulle jo ikke gøre nogen forskel?
hekla>Der er ingen sammenhæng mellem CPR-nr og StatusID.
Avatar billede mugs Novice
29. marts 2004 - 15:35 #5
Måske en lidt naiv kommentar, men du er vel 300% sikker på, at der er poster, som opfylder kriteriet StatusID = 1.
Avatar billede terry Ekspert
29. marts 2004 - 15:46 #6
I think with a problem like this taht it will be necessary to see your dB so if its possible to send it then I wll take a look for you.

NOSPAMeksperten@santhell.dkNOSPAM

remove NOSPAM
Avatar billede geertf Nybegynder
29. marts 2004 - 21:15 #7
mugs>din kommentar er fair nok. Det er jo tit "stikket ikke sidder i", men egentlig skulle det jo være ligemeget, for så skulle den jo blot returnere en tom forespørgsel?!
terry>jeg har ikke mulighed for at sende den nu, men vil sikkert gerne tage imod dit tilbud i morgen.
Avatar billede terry Ekspert
29. marts 2004 - 22:08 #8
OK geertf, I will take a look at it as soon as I can after receiving it!
Avatar billede hekla Nybegynder
30. marts 2004 - 00:15 #9
Virker den, hvis du fjerner

AND ((Tbl_Brugere.StatusID)=1)

?
Avatar billede geertf Nybegynder
30. marts 2004 - 10:06 #10
hekla>ja, den var værre! den virker ikke hvis jeg fjerne AND ((Tbl_Brugere.StatusID)=1) men godt hvis AND ((Tbl_Brugere.StatusID)=[hvilken som helst anden værdi end 1]). Jeg må sige, at jeg ikke rigtig forstå det her selv?

terry>jeg vil meget gerne sende db'en til dig. Jeg har baberet alt unødvendigt af, og testbrugerne er fiktive.
Avatar billede terry Ekspert
30. marts 2004 - 17:25 #11
send away!
Avatar billede terry Ekspert
30. marts 2004 - 17:26 #12
my email is at 29/03-2004 15:46:56
Avatar billede terry Ekspert
30. marts 2004 - 18:20 #13
BrugerID 14 has a CPRNR = 131540 .....
Avatar billede hekla Nybegynder
30. marts 2004 - 23:49 #14
:o)
Avatar billede hekla Nybegynder
31. marts 2004 - 01:42 #15
29/03-2004 14:39:16
Avatar billede geertf Nybegynder
31. marts 2004 - 09:42 #16
ehhem.... ja, jeg føler mig jo sjældent dum, men der er jo en lektie at lære her. Mange tak for hjælpen!
terry> jeg håber det er i orden, at hekla får nogle lidt point, han/hun havde jo fat i den lange ende - hvilket lykkes mig totalt at misforstå. Scuso!
Avatar billede hekla Nybegynder
31. marts 2004 - 10:41 #17
Det er helt i orden at terry får nogle af pointene, selv om jeg kom med det rigtige svar først. Han gjorde trods alt den største indsats for at få det til at fungere :o)
Avatar billede mugs Novice
31. marts 2004 - 14:08 #18
geertf -> der findes en metode der udelukker forkert indtastede CPRNR samt forkert antal tegn. Du kan lave en modulus 11 beregning, samt måle antal tegn ved hjælp af funktionen Len. så kommer du aldrig ud i denne situation igen.

Der findes en demo af modulus11 på thomasjepsen's side. Hvis du lægger din e-mail ken jeg sende dig min version.
Avatar billede geertf Nybegynder
31. marts 2004 - 15:37 #19
mugs> jeps, tak skal du have. Modulus har jeg allerede allieret mig med, selvom CPR-registret ikke anbefaler det mere (det bliver afskaffet over en årrække). Len() havde jeg ikke tænkt på.
Avatar billede mugs Novice
31. marts 2004 - 17:10 #20
Din e-mail?
Avatar billede geertf Nybegynder
01. april 2004 - 13:52 #21
mugs>har først set din kommentar i dag. ANTISPAMmed180itimen@hotmail.comANTISPAM
Avatar billede mugs Novice
01. april 2004 - 18:28 #22
Sendt.
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