Avatar billede tblaster Nybegynder
26. juni 2002 - 15:37 Der er 21 kommentarer og
1 løsning

Data type mismatch in criteria expression.

Hejsa

Hvad er der i vejen med følgende:

<%
        Set Conn = Server.CreateObject("ADODB.Connection")
        Set Rs = Server.CreateObject("ADODB.Recordset")
        Conn.Open "DBQ=" & Server.Mappath("../Login/Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};"

SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = '" & Session("auth_GruppenavnId") & "'"


        rs.Open SQL, Conn

        x = 0
        For x = 1 to 9999
        If rs.eof then
        Exit For
        Else



  response.write Brugernavn

        rs.MoveNext
        End If
        Next

%>

Det giver denne fejl:
Data type mismatch in criteria expression.
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:38 #1
Hvilken linie?
Det har måske noget at gøre med:
SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = '" & Session("auth_GruppenavnId") & "'"

Hvis dit Gruppenavn-felt er tekst, men din session("auth_GruppenavnId") er et tal kan du ikke sammeligne...
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:39 #2
Den siger at det er denne linje:

        rs.Open SQL, Conn
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:40 #3
Mit gruppenavn er et tal og det er min session("auth_GruppenavnId") også!
Avatar billede medions Nybegynder
26. juni 2002 - 15:40 #4
<%
        Set Conn = Server.CreateObject("ADODB.Connection")
        Set Rs = Server.CreateObject("ADODB.Recordset")
        Conn.Open "DBQ=" & Server.Mappath("../Login/Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};"

SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = '" & Session("auth_GruppenavnId") & "'"


        rs.Open SQL, Conn

        x = 0
        For x = 1 to 9999
        If rs.eof then
        Exit For
        Else



  response.write rs("Brugernavn")

        rs.MoveNext
        End If
        Next

%>

//>Rune
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:41 #5
Ja, så det kan godt have noget med det at gøre (det jeg skrev før).
Er der overhovedet noget i din session("auth_GruppenavnId")?
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:42 #6
Det giver det samme Rune!
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:43 #7
Hvad får du hvis du udskriver din SQL ?
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:44 #8
Der er noget i min session("auth_GruppenavnId") ... jeg har lige checket det med:
<%= session("auth_GruppenavnId") %>
Avatar billede medions Nybegynder
26. juni 2002 - 15:45 #9
<%
        Set Conn = Server.CreateObject("ADODB.Connection")
        Set Rs = Server.CreateObject("ADODB.Recordset")
        Conn.Open "DBQ=" & Server.Mappath("../Login/Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};"

SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = " & Session("auth_GruppenavnId")


        rs.Open SQL, Conn

        x = 0
        For x = 1 to 9999
        If rs.eof then
        Exit For
        Else



  response.write Brugernavn

        rs.MoveNext
        End If
        Next

%>

//>Rune
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:45 #10
udskriver SQL ?!?!??!?!?!?!
Avatar billede kichian Nybegynder
26. juni 2002 - 15:45 #11
Hvis gruppenavn er defineret som et tal, så skal ' fjernes.
Avatar billede medions Nybegynder
26. juni 2002 - 15:47 #12
tblaster, prøv fx. at skrive:
Response.Write(SQL) og se hvad den udskriver...

//>Rune
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:47 #13
Du udskriver din SQL sådan her:

response.write SQL

Som placeres på linien lige efter:
SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = '" & Session("auth_GruppenavnId") & "'"
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:50 #14
Nu giver dem mig følgende:

Item cannot be found in the collection corresponding to the requested name or ordinal.
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:51 #15
Og du har stavet Brugernavn og Bruger rigtigt?
Avatar billede eagleeye Praktikant
26. juni 2002 - 15:52 #16
i din else skal du skrive sådan her:

Else



  response.write rs("Brugernavn")

        rs.MoveNext
        End If
Avatar billede skovtrold Nybegynder
26. juni 2002 - 15:52 #17
Prøv lige det her og sig hvad du får ved det:

SQL = "SELECT Brugernavn FROM Bruger WHERE Gruppenavn = " & Session("auth_GruppenavnId")
response.write SQL
Avatar billede medions Nybegynder
26. juni 2002 - 15:52 #18
tblaster> Der findes ikke noget recordset som er lig med din Session!

//>Rune
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:53 #19
Det virkede med Runes ... jeg havde skrevet noget forkert af det den skulle hente ... nu virker det ...

Rune ... du har styr på asp ... har du lyst så er der mere her :-)

http://www.eksperten.dk/spm/229190
Avatar billede medions Nybegynder
26. juni 2002 - 15:54 #20
:-)
Thx 4 Poinz

//>Rune
Avatar billede medions Nybegynder
26. juni 2002 - 15:55 #21
Jeg har lige kigget på dit spm. Det er alt for uoverskuelig til jeg gider at gå igang med det...

//>Rune
Avatar billede tblaster Nybegynder
26. juni 2002 - 15:57 #22
:-) Snøft ... jeg har ellers gjort det så godt som muligt ... man skal sku faktisk bare lige samle de så koder til en stor ... der er ikke andet ved det! 100 point :-D
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