数据删除前的判断,该如何解决
数据删除前的判断
上面代码,可以对单个数据进行删除前的判断,如果提交过来是一组数据,就判断失败。
如果要判断传递过来的一组id,对应的rs("d_aud") = 0都等于0才能删除,应该怎么修改。
------解决思路----------------------
那你要改变下思路,判断d_aud=1的记录数>0就说明有不满足的记录,
------解决思路----------------------
If Request("check") <> "" Then
Set rs = Server.CreateObject("adodb.recordset")
rs.open "select count(1) as c FROM d_store WHERE d_id in (" & Request("check") & ") and d_aud<>0",conn,1,3
If rs("c") = 0 Then
DelStr = "DELETE FROM d_store WHERE d_id in (" & Request("check") & ")"
conn.execute DelStr
Response.Write "<script language='javascript'>alert('删除成功');</script>"
Else
Response.Write "<script language='javascript'>alert('不能删除');</script>"
End If
rs.Close
Set rs = Nothing
End If
If Request("check") <> "" Then
Set rs = Server.CreateObject("adodb.recordset")
rs.open "select * FROM d_store WHERE d_id in (" & Request("check") & ")",conn,1,3
If rs("d_aud") = 0 Then
DelStr = "DELETE FROM d_store WHERE d_id in (" & Request("check") & ")"
conn.execute DelStr
Response.Write "<script language='javascript'>alert('删除成功');</script>"
Else
Response.Write "<script language='javascript'>alert('不能删除');</script>"
End If
rs.Close
Set rs = Nothing
End If
上面代码,可以对单个数据进行删除前的判断,如果提交过来是一组数据,就判断失败。
如果要判断传递过来的一组id,对应的rs("d_aud") = 0都等于0才能删除,应该怎么修改。
------解决思路----------------------
那你要改变下思路,判断d_aud=1的记录数>0就说明有不满足的记录,
If Request("check") <> "" Then
Set rs = Server.CreateObject("adodb.recordset")
rs.open "select count(*) FROM d_store WHERE d_id in (" & Request("check") & ") and d_aud=1",conn,1,3'统计id中是否存在d_aud=1的记录
If rs(0) = 0 Then '不存在
DelStr = "DELETE FROM d_store WHERE d_id in (" & Request("check") & ")"
conn.execute DelStr
Response.Write "<script language='javascript'>alert('删除成功');</script>"
Else
Response.Write "<script language='javascript'>alert('不能删除');</script>"
End If
rs.Close
Set rs = Nothing
End If
------解决思路----------------------
If Request("check") <> "" Then
Set rs = Server.CreateObject("adodb.recordset")
rs.open "select count(1) as c FROM d_store WHERE d_id in (" & Request("check") & ") and d_aud<>0",conn,1,3
If rs("c") = 0 Then
DelStr = "DELETE FROM d_store WHERE d_id in (" & Request("check") & ")"
conn.execute DelStr
Response.Write "<script language='javascript'>alert('删除成功');</script>"
Else
Response.Write "<script language='javascript'>alert('不能删除');</script>"
End If
rs.Close
Set rs = Nothing
End If