Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 14:12 Der er 6 kommentarer og
1 løsning

forespørgelsen er for kompleks?

har i nogensinde hørt denne fejlmeddelse: Forespørgelsen er for komplex!
_------------------------_
if not rs3.eof then
                                strSQL = \"Select * from stamfil where ID = \"&rs3(\"ID\")&\" \"


hvad kan jeg gøre?
                                rs3.movenext
                                do until rs3.eof
                                strSQL = strSQL & \"or ID = \"&rs3(\"ID\")&\" \"
                                rs3.movenext
                                loop
                                strSQL = strSQL & \"order by Virksomhedsnavn;\"
                                Set rs2 = Conn.Execute(strSQL)
Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 14:13 #1
ups, jeg kom til at skrive midt i koden, det var ikke meningen!
Avatar billede z42cool Nybegynder
09. oktober 2001 - 14:16 #2
rs3(\"ID\") returnerer et object hvorimod rs3(\"ID\").value nok er det du i virkeligheden gerne vil have fat i, nemlig den værdi ID har i den givne række! Gider du ikke prøve at erstatte

Set rs2 = Conn.Execute(strSQL) med
Response.write(strSQL)

og poste resultatet her, så kan vi se den generede SQL!
Avatar billede webbe Nybegynder
09. oktober 2001 - 14:16 #3
Hmmmm - underligt.....men tror det har noget med at gøre, at du laver en sql i en loop og dermed får et antal sql-sætninger der svarer til det antal poster der er i dit recordset (rs3).

Hvorfor laver du iøvrigt også en movenext inden du laver din do until???

For mig virker det underligt, men prøv at beskrive projektet (hvad vil du med det) - så kan vi måske bedre hjælpe!
Avatar billede eagleeye Praktikant
09. oktober 2001 - 14:19 #4
sjet

har du over vejet at lave en \",\" streng:

findIDs = rs3(\"ID\")
do until rs3.eof
findIDs = findIDs & \",\"&rs3(\"ID\")
rs3.movenext
loop
                               
strSQL = \"Select * from stamfil where ID IN (& findIDs &\") order by Virksomhedsnavn;\"
Set rs2 = Conn.Execute(strSQL)
Avatar billede eagleeye Praktikant
09. oktober 2001 - 14:20 #5
strSQL = \"Select * from stamfil where ID IN (\"& findIDs &\") order by Virksomhedsnavn;\"
Avatar billede eagleeye Praktikant
09. oktober 2001 - 14:22 #6
up havde lige overset første  rs3.movenext

findIDs = rs3(\"ID\")
rs3.movenext
do until rs3.eof
..
..

Avatar billede mathiasiversen Nybegynder
09. oktober 2001 - 15:08 #7
jeg vender lige tilbage i aften - der er lige kommet noget i vejen :)
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
Kurser inden for grundlæggende programmering

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