Vilken datatyp har kolumnerna
arbeten.id och atgarder.id2 ?
Hur ser sqlfrågan ut om du skriver ut den med response.write?
11 svar · 318 visningar · startad av OveRRidE
Vad är det för fel på detta?
strQuot = Chr(39)
getArb = "SELECT * FROM arbeten, atgarder WHERE arbeten.id = " & Request.QueryString("id") & " AND atgarder.id2 = " & Request.QueryString("id") & " "
RecSet.Open getArb, Connect, adOpenStatic, adLockOptimistic
När jag får följande felmeddelande:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/jobb.asp, line 16
Tacksam för snabbt svar!
Vilken datatyp har kolumnerna
arbeten.id och atgarder.id2 ?
Hur ser sqlfrågan ut om du skriver ut den med response.write?
arbeten.id är primärnyckel i "arbeten".
atgarder.id2 är en siffra som är samma som id. identifierare eller vad man nu vill kalla den, för att knyta mellan tabellerna.
datatypen är id = primärnyckel och id2 = text..
False står det.
Om kolumnerna är av typen text så får du skriva så här i stället:
getArb = "SELECT * FROM arbeten, atgarder WHERE arbeten.id = '" & Request.QueryString("id") & "' AND atgarder.id2 = '" & Request.QueryString("id") & "'"
fortfarande likadant
getArb = "SELECT * FROM arbeten, atgarder WHERE arbeten.id = '" & Request.QueryString("id") & "' AND atgarder.id2 = '" & Request.QueryString("id") & "'"
Ett? Jag har lagt till 4 stycken. Varje sökvärde omges av '' om man jämför med en kolumn av typen text.
Den sträng du får efter att ha gjort konkateneringen borde se ut som
SELECT * FROM arbeten, atgarder WHERE arbeten.id = '4711' AND atgarder.id2 = '4711'
(När jag frågade hur strängen ser ut så menade jag att du skulle skriva ut variabeln getArb.)
arbeten.id = räknare (primärnyckel)
atgarder.id2 = text
SELECT * FROM arbeten, atgarder WHERE arbeten.id = '54' AND atgarder.id2 = '54'
Alltså, id är numeriskt och id2 är av typen text? I så fall:
getArb = "SELECT * FROM arbeten, atgarder WHERE arbeten.id = " & Request.QueryString("id") & " AND atgarder.id2 = '" & Request.QueryString("id") & "'"
Om det är en räknare så skall det inte vara några ' alls.
Egentligen borde du väl ha samma datatyp på id2 som det är för id om du vill kunna jämföra dessa.