Avatar billede medions Nybegynder
17. juli 2001 - 15:58 Der er 25 kommentarer og
1 løsning

ASP - og SQL med SELECT COUNT!

Hvad er der galt her?
Jeg får fejlen:
Microsoft OLE DB Provider for ODBC Drivers fejl \'80040e07\'
[Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.

/div/test/indgang.asp, linje 31

og i linie 31 er Set rs = myConn.Execute(strSQL)!



strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"db.mdb\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open strDSN
strSQL = \"SELECT COUNT(bruger) AS Antal From forum Where svarbruger=\" & session(\"bruger\")
Set rs = myConn.Execute(strSQL)
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:00 #1
strSQL = \"SELECT COUNT(bruger) AS Antal From forum Where svarbruger=\'\" & session(\"bruger\") & \"\'\"

sådan :-)

du mangler \'\'
Avatar billede medions Nybegynder
17. juli 2001 - 16:00 #2
og jeg udskriver den sådan her:
<%= rs(\"Antal\") %>
Avatar billede medions Nybegynder
17. juli 2001 - 16:01 #3
LOL DOH!!! *GGG*

fuck mand... nogle gange dummer mand sig sq! :-)
Avatar billede jacobve Nybegynder
17. juli 2001 - 16:02 #4
du mangler \' rundt om session(\"bruger\")
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:02 #5
*GGG* det sker ;o) (selv for mig til tider *s*)
Avatar billede jacobve Nybegynder
17. juli 2001 - 16:03 #6
hehe... jeg har lavet samme \"finte\" for nylig, så du er ikke alene :-)
Avatar billede medions Nybegynder
17. juli 2001 - 16:06 #7
*G*

men alligevel er jeg nok lidt rundt på gulvet!

når jeg vil tælle hvor mange gange navnet Anders fremgår i en tabel, hvordan skal jeg så stille det op?
Avatar billede medions Nybegynder
17. juli 2001 - 16:08 #8
er det da ikke sådan her?

strSQL = \"SELECT COUNT(id) AS Antal From forum Where svarbruger=\'\" & session(\"bruger\") & \"\'\"
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:10 #9
du kan tælle et hvilkensomhelst felt ..
strSQL = \"SELECT COUNT(bruger) AS Antal From forum Where svarbruger=\'\" & session(\"bruger\") & \"\'\"
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:11 #10
UPS .,. SQL\'et skulle ikke med *gg*
Avatar billede medions Nybegynder
17. juli 2001 - 16:13 #11
når jeg nu vil tælle feltet svarbruger!

og jeg skal tælle hvor mange gange navnet Anders fremgår! hvordan skal det så se ud!?
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:14 #12
strSQL = \"SELECT COUNT(id) FROM forum WHERE svarbruger=\'Anders\';\"

sådan .. jeg plejer altid at tælle \"id\" feltet ..
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:15 #13
Rs(0) giver dig resultatet istedet for at bruge AS feltnavn
Avatar billede medions Nybegynder
17. juli 2001 - 16:16 #14
hvorfor virker dette så ikke??? *G*

<%
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"db.mdb\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open strDSN
strSQL = \"SELECT COUNT(id) AS Antal From forum Where svarbruger=\'\" & session(\"bruger\") & \"\';\"
Set rs = myConn.Execute(strSQL)
%>
<tr>
  <td>Du har besvaret: <%= rs(\"Antal\") %></td>
</td>
</table>
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:20 #15
Vel fordi Session(\"bruger\") ikke indeholder noget, eller der blev bare ingen poster fundet ..
Avatar billede medions Nybegynder
17. juli 2001 - 16:20 #16
okay.. så har jeg så sat det op som du ville ha\' gjordt!

<%
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"db.mdb\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open strDSN
strSQL = \"SELECT COUNT(id) From forum Where svarbruger=\'\" & session(\"bruger\") & \"\';\"
Set rs = myConn.Execute(strSQL)
%>
<tr>
  <td>Du har besvaret: <%= rs(0) %></td>
</td>
</table>
Avatar billede medions Nybegynder
17. juli 2001 - 16:22 #17
*LOL*

jeg tror jeg går i seng nu!!!
det virkede da jeg skrev:

strSQL = \"SELECT COUNT(id) From forum Where svarbruger=\'\" & \"Rune\" & \"\';\"


takker mange gange for din hjælp! ;-)
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:24 #18
Din kode cleanet up .. :o) Jeg kan ikke tåle at se rodet kode *S*

<%
    Set myConn = Server.CreateObject(\"ADODB.Connection\")
    myConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db.mdb\")
    Set rs = myConn.Execute(\"SELECT COUNT(id) FROM forum WHERE svarbruger=\'\" & session(\"bruger\") & \"\';\")
%>
    <tr>
        <td>Du har besvaret: <%= rs(0) %></td>
    </td>
</table>

men prøv at udskrive SQL kaldet således:

response.write \"SELECT COUNT(id) FROM forum WHERE svarbruger=\'\" & session(\"bruger\") & \"\';\"
Avatar billede medions Nybegynder
17. juli 2001 - 16:25 #19
*G* response.write ?
Avatar billede medions Nybegynder
17. juli 2001 - 16:25 #20
det har jeg sq da aldrig set før?!
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:25 #21
det var så lidt :-)
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:25 #22
medions:> set hvad ?
Avatar billede medions Nybegynder
17. juli 2001 - 16:28 #23
response.write \"SELECT COUNT(id) FROM forum WHERE svarbruger=\'\" & session(\"bruger\") & \"\';\"

hvis du skriver det udskriver den så ikke bare

\"SELECT COUNT(id) FROM forum WHERE svarbruger=\'\" & session(\"bruger\") & \"\';\"
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:31 #24
medions:> nopes .. så vil den udskrive f.eks.:

SELECT COUNT(id) FROM forum WHERE svarbruger=\'Rune\';

hvis indholdet af Session(\"bruger\") var \"Rune\"
Avatar billede medions Nybegynder
17. juli 2001 - 16:35 #25
ahh! det er nemlig det den skulle!..->vidste ikke lige hvad du ville frem til! :-)

det var enda mig der havde dummet mig helt fra starten med at skrive session(\"bruger\") hvilket vil udskrive brugerid\'et! jeg skulle ha\' skrevet session(\"brugernavn\") *GGG*

men det er der jo ikke noget at gøre ved! ;-)
takker endnu engang for hjælpen !
Avatar billede tdaugaard Nybegynder
17. juli 2001 - 16:39 #26
*GG* helt ok :-)
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