asp 复选框批量删除数据库记录

来源:百度知道 编辑:UC知道 时间:2024/09/24 00:50:07
我用了2个asp文件,一个前台显示11.asp,一个后台操作del.asp
<input name="shanchu" type="checkbox" value="<%=rs("id")%>" />这是前台显示中复选框的属性。del.asp代码如下
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("book.mdb")
sql="delete from book where id in("&request("shanchu")&")"
conn.execute(sql)
response.redirect "./11.asp"

执行del.asp时报错错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'id in()' 中。
/del.asp, 第 15 行

第15行是“conn.execute(sql)”

各位高手,帮帮忙,看看怎么修改,谢谢了
我照 521syq518的改了一下代码,还是有错,说是数组索引越界
就是delete那行

sql 语句做个循环。
request有个属性可以拆分获得的复选框,
for i=0 to request("shanchu").count
delete from book where id in("&request("shanchu")(i)&")"
conn.execute(sql)
next

我是这样做的,11.asp中的复选框名字都为"msgdel",初始值都为"<%=rs("id")%>"
然后就在del.asp中这样写:
<!--#include virtual="conn.asp"-->
<%
id=request("msgdel")
sql="delete from book where id in("&id&")"
conn.execute(sql)
response.write"<script>alert('删除成功!');window.location='11.asp';</script>"
%>
QQ:38086770