Avatar billede kragekjaer Praktikant
28. januar 2001 - 22:53 Der er 11 kommentarer og
1 løsning

Kommer ikke frem!

Hej,
Lille problem:
Noget mærkeligt sker, jeg tror sql-sætningen er god nok. Du skal nok få pointene.Min kode ser sådan ud:

<%
       
        Set Conq = Server.CreateObject    (\"ADODB.Connection\")
        Conq.open = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"& Server.MapPath(\"quiz.mdb\")
       
        sqlString= \"Select spm1 from spm where quizid=\" & (int(Rnd*10)) &\"\"
       
        Conq.Execute (sqlString)
        Conq.Close
        Set Conq = Nothing
%>

Længere har jeg som test sat <%=spm1%> men der kommer ikke noget ud. Ved du hvad der kan være fejlen. Der er noget i databasen.
Avatar billede kragekjaer Praktikant
28. januar 2001 - 22:55 #1
Heller ikke engang hvis jeg bare skriver:

Select spm1 from spm where quizid=1

spm1 er sat som datatype Notat/memo
Avatar billede tpiil Nybegynder
28. januar 2001 - 22:56 #2
int(Rnd*10)
Avatar billede tpiil Nybegynder
28. januar 2001 - 22:57 #3
where quizid=\'\" & (int(Rnd*10)) &\"\'\"

eller

where quizid=\'\" & int(Rnd*10) &\"\'\"
Avatar billede kragekjaer Praktikant
28. januar 2001 - 23:13 #4
Får denne:
Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.
Avatar billede eagleeye Praktikant
29. januar 2001 - 00:16 #5
sqlString= \"Select spm1 from spm where quizid=\" & int(Rnd*10)

Hvis det ikke virker så prøv:

sqlString= \"Select spm1 from spm where quizid=\" & Clng(int(Rnd*10))
Avatar billede stringbuffer Nybegynder
29. januar 2001 - 05:44 #6
prøv med
Conq.open(\"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"& Server.MapPath(\"quiz.mdb\"))
Avatar billede stringbuffer Nybegynder
29. januar 2001 - 05:46 #7
er ikke ekspert på VBScript området... det er muligt at du ikke skal bruge parantester men bare skrive
Conq.open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"& Server.MapPath(\"quiz.mdb\")

. o O ( og denne gang prøver jeg at kalde det etsvar )
Avatar billede strax Nybegynder
31. januar 2001 - 14:12 #8
Uha ... for det første er syntaksen for Conq.Open

Conq.Open ConnectionString, User, Pass, Options .. du kan nok bare nøjes med at fjerne dit = tegn.

For det andet uderskriver du en variabel der ikke findes <%=spm1%>

Prøv det her, og meld tilbage om det virker:

<%
       
        Set Conq = Server.CreateObject(\"ADODB.Connection\")
        Conq.open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"& Server.MapPath(\"quiz.mdb\")
       
        sqlString= \"Select spm1 from spm where quizid=\" & (int(Rnd*10))
       
        Poster = Conq.Execute (sqlString)
        spm1 = Poster(\"spm1\")
        Conq.Close
        Set Conq = Nothing
%>


Avatar billede kragekjaer Praktikant
31. januar 2001 - 14:38 #9
Tak Strax, det virker. Kan du lige svare på en lille ting? Når man i databasen(Access2k - dk) har sat datatypen til Ja/Nej, hvad returneres så i en førespørgsel?
Avatar billede tpiil Nybegynder
31. januar 2001 - 14:39 #10
det er on og off
Avatar billede strax Nybegynder
31. januar 2001 - 14:43 #11
Det ved jeg ikke, men heldigvis gjorde tpiil :-)
Avatar billede tpiil Nybegynder
31. januar 2001 - 14:46 #12
men HMM jeg fik ingen mail\'s før jeg var afvist!!
det var ellers et nemt spørgsmål :)
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