巧用in关键字实现数据的批量删除
在WEB编程中经常会碰到数据的批量删除。我们通常的做法是通过循环来实现数据的批量的删除。但是一个程序模块循环用的太多那么这个程序模块的质量就会下降。因此本文就介绍通过巧用in关键字来实现数据的批量删除。
让我们通过一个例子来讲解IN关键字的数据批量删除
假如我们要删除这个页面的数据:相关代码如下:
managenews.asp <!--#include file="conn.asp"--
<%'数据库的连接文件我就不多说了% <html
<head
<title管理新闻</title
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
<link rel="stylesheet" href="../index/style.css" type="text/css"
<script
function del () //用于判断记录有没有选中的函数
{
var flag=true;
var temp="";
var tmp;
if((document.form1.answer.length+"")=="undefined") {tmp=1}else{tmp=document.form1.answer.length}
if (tmp==1){
if (document.form1.answer.checked){
flag=false;
temp=document.form1.answer.value
}
}else{
for (i=0;i<document.form1.answer.length;i++) {
if (document.form1.answer[i].checked){
if (temp==""){
flag=false;
temp=document.form1.answer[i].value
}else{
flag=false;
temp = temp +","+ document.form1.answer[i].value
}
}
}
}
if (flag){ alert("对不起,你还没有选择!")}
else{ name=document.form1.name.value
//alert(name)
if (confirm("确实要删除?")){
window.location="delnews.asp?id=" + temp;
}
}
return !flag;
}
</script
</head
<body
<script language=Javascript
function checkall(all)//用于判断全选记录的函数
{
var a = document.getElementsByName("answer");
for (var i=0; i<a.length; i++) a[i].checked = all.checked;
}
</script
<%
set rs=server.createobject("adodb.recordset")
sql="select * from news order by addtime desc"
rs.open sql,conn,1,3 %
<% if rs.eof then %
<table width="50%" border="0" align="center" ID="Table2"
<tr
<td align="center"
没有新闻!
</tr
</table
<% else %
<form method="POST" id=form1 name=form1
<table width="90%" border="0" align="center" class="tabDocborder" ID="Table3"
<tr
<td
<table width="80%" align="center" id=TabDocMain border='1' cellspacing='0' cellpadding='0' bordercolorlight='#82b4dd' bordercolor='#b6d3eb' class="TabDocMain"
<thead
<tr
<td colspan="7" align="center"
新闻管理中心
</td
</tr
</thead
<tbody
<tr
<td align=center
删除框
</td
<td align=center
新闻标题
</td
<td align=center
发布时间
</td
<td align=center
管理
</td
</tr
<%
do while not rs.eof
%
<tr
<td align=center<input type="checkbox" name="answer" value="<%=rs("id")%" ID="Checkbox1"
</td
<td align=left<%If Len(rs("title"))<=30 Then%<%=rs("title")%<%else