Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
hele koden ser således ud :
<% dim objConn , strSQL
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../onlinechat/lyde.mdb")
strSQL = "SELECT * FROM lyd WHERE person like "& chatName &""
response.write strSQL
Set objRs = objConn.Execute(strSQL)
If Not (objRs.EOF And objRs.BOF) Then
Response.Write("<script language='javascript'>")
Response.Write("window.open('birthday.asp','Tillykke','width='200', height='200', scrollbars=yes, resizable=no');")
Respons.Write("</script>")
End If
%>
Hvilken giver problemer?
strSQL = "SELECT count(*) FROM lyd WHERE person like "& chatName &""
eller
strSQL = "SELECT * FROM lyd WHERE person like "& chatName &""
select count(*) sætningen er problemmet
Prøv at sige:
strSQL = "SELECT count(*) AS total FROM lyd WHERE person like '"& chatName &"' "
Ja, prøv som senj siger.
Du kan læse mere om count her:
http://activedeveloper.dk/ (...)
Evt også med % i LIKE så person bare skal indeholde det som står i chatName:
strSQL = "SELECT count(*) AS total FROM lyd WHERE person like '%"& chatName &"'%"
tak for hjælpen det var "as" jeg havde glemt
Ja der skal ikke meget til at lortet vælter!
Bare så du ikke render rundt og tror noget forkert :-)
Man kan sagtens bruge aggregate funktioner som COUNT, uden at resultatet skal have et alias. Det reelle problem i dn sætning var den manglende ' (ping) i din LIKE.
>>tmceu - Det er ganske rigtigt, og hvis du kigger på mit eks. så er der også tilføjet ekstra plinger (')
senj >> det siger jeg jo heller ikke, at der ikke er. Jeg forsøger bare at rette den misforståelse, at fejlen skyldes "AS" som spørgeren tror og du bekræfter.
Læg mærke til, at jeg kun smed en kommentar, så det var ikke for at nasse på point, men ganske simpelt for at rette en misforståelse :-)