webForumDet fria alternativet

SQL-update (mismatch)

3 svar · 327 visningar · startad av sin_adec

sin_adecMedlem sedan apr. 2002272 inlägg
#1

Tjenare jag försöker uppdatera informationen som ligger i databasen men får ett mismatch fel.

min kod är följande:

<!-- #INCLUDE FILE="databasanslutning.asp" -->

<%

Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="& Server.MapPath(db) &" "

Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM test where accept=0"
RecSet.Open SQL, Connect, 3,3

%>
<html>
<%
if recset.eof then
response.write "inga inlägg"
else
do until recset.eof
%>
<%=recset("rubrik")%> - <a href="test.asp?uppdatera=1&id=<%=recset("id")%>">Acceptera</a> <br>
<%
recset.Movenext
loop
end if
%>

<% if request.querystring("uppdatera")="" then
else
SQL2 = "Update test set accept = 1 where id = '" &request.querystring("id")&"'"
connect.execute SQL2,,128
end if
%>
</html>

felmeddelandet är följande:

Microsoft JET Database Engine error '80040e07' 

Data type mismatch in criteria expression. 

/kontrollpaneladmin.asp, line 33

tack på förhand.

emissionMedlem sedan dec. 19996 721 inlägg
#2

SQL-fråga, bör ställas i SQL-forumet

"where accept=false"

LarsGMedlem sedan dec. 200012 464 inlägg
#3
SQL2 = "Update test set accept = 1 where id = " &request.querystring("id")

Du måste också hantera SQL injection

Flyttas från ASP

LedelMedlem sedan dec. 2004736 inlägg
#4

Förhindra SQL-injection på tal (som ID):
CLng(Request.Querystring("id"))

130 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)