Avatar billede axkris Nybegynder
31. juli 2001 - 18:59 Der er 19 kommentarer og
1 løsning

En SQL-forespørgsel, som driller

Jeg sidder og bakser med en forespørgselsstreng til Access, hvor der er en enkelt linje, som jeg ikke kan få til at virke.

Jeg trækker data fra flere tabeller og har en række WHERE-forudsætninger.

Linjen, som driller mig, ser sådan ud:

strQuery=strQuery+\"and Month(aktivitet.skriv_dato)) = \'\" & strMD & \"\' \"

\"skriv_dato\" er et felt i tabellen \"aktivitet\", som skal matche strMD, der hentes via Request.Quertstring.

Nogle bud?
Avatar billede axkris Nybegynder
31. juli 2001 - 19:02 #1
Jeg kan godt se, at der er en højre-parantes for meget - men det er en skrivefejl her på siden.
Avatar billede axkris Nybegynder
31. juli 2001 - 19:04 #2
skriv_dato er et datofelt
Avatar billede terry Ekspert
31. juli 2001 - 19:04 #3
strQuery=strQuery & \"and \" & Month(aktivitet.skriv_dato) & \" = \'\" & strMD & \"\' \"

Avatar billede axkris Nybegynder
31. juli 2001 - 19:06 #4
Testet... Svar:
/aktiviteter/oversigt_all.asp, linje 88
Avatar billede terry Ekspert
31. juli 2001 - 19:06 #5
Or something like that!

The Month(.... bit has to be outside the \"\" or it just gets converted to palin old text, but you wnat it do actaully return the month, or at least I think you do.
Avatar billede axkris Nybegynder
31. juli 2001 - 19:06 #6
Et objekt er obligatorisk: \'aktivitet\'

Avatar billede axkris Nybegynder
31. juli 2001 - 19:08 #7
Yes, I want to test the month
Avatar billede terry Ekspert
31. juli 2001 - 19:08 #8
Actually I think your strMD nneds to be an number

strQuery=strQuery & \"and \" & Month(aktivitet.skriv_dato) & \" = \" & strMD
Avatar billede terry Ekspert
31. juli 2001 - 19:10 #9
We are getting there...

strQuery=strQuery  & \"and Month(aktivitet.skriv_dato)) = \" & strMD

Avatar billede terry Ekspert
31. juli 2001 - 19:11 #10
You may need to put a space befor ethe and, depending on contents of strQuery
Avatar billede terry Ekspert
31. juli 2001 - 19:14 #11
The Month() is going to retrun a number so strMD also needs to be a number and if its in \'\' then its a text field!
Avatar billede axkris Nybegynder
31. juli 2001 - 19:14 #12
I tested:

strMD=CINT(strMD)
strQuery=strQuery & \"and \" & Month(aktivitet.skriv_dato) & \" = \" & strMD & \" \"

... but the same error
Avatar billede terry Ekspert
31. juli 2001 - 19:18 #13
OK! I dont know much about ASP but when your finished with creating your strQuery, then write it to the page response.write I think, then cut and paste this in to an Access query and you can see what your doing.
Avatar billede terry Ekspert
31. juli 2001 - 19:19 #14
If you can send me the database and the output of the strQuery then I can maybe help!
Avatar billede axkris Nybegynder
31. juli 2001 - 19:22 #15
I\'m still running into an error - so there is no output, but thanks!
Avatar billede terry Ekspert
31. juli 2001 - 19:27 #16
what is the error saying?
Avatar billede terry Ekspert
31. juli 2001 - 19:29 #17
strQuery=strQuery & \"and Month(aktivitet.skriv_dato) = \" & strMD
Avatar billede axkris Nybegynder
31. juli 2001 - 19:29 #18
Der opstod en Microsoft VBScript-kørselsfejl fejl \'800a01a8\'

Et objekt er obligatorisk: \'\'

/aktiviteter/oversigt_all.asp, linje 104
Avatar billede terry Ekspert
31. juli 2001 - 19:30 #19
I have now placed the month in the string, and as I mentioned previously you may need a space before the and!
Avatar billede axkris Nybegynder
31. juli 2001 - 19:48 #20
Now it\'s working:

strQuery=strQuery+\"and Month(aktivitet.skriv_dato) = \'\" & strMD & \"\' \"

As STR - not CINT

Thanks!
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