因为我和同事都要对datalist用checkbox进行选取再删除.我是在for循环里用一个ArrayList纪录被选中行的id,再调用DEL(id){delete ** form ** where id = ArrayList里的值}方法删除.而我的同事是在for循环里判断如果被选中就取id,再调用DEL(id){delete ** form ** where id = id}方法删除。这两个方法哪个效率更高?刚才看到可以用deldte....in (...),这种方法是不是更好.

解决方案 »

  1.   

    1
    记录所有id 拼接成 “3,4,5“这样的
    然后 delete * from tablename where id in (3,4,5) 一次就可以2
    记录所有id 拼接成 “id=3 or id=4 or id=5“这样的
    然后 delete * from tablename where id=3 or id=4 or id=5 一次就可以
      

  2.   

    简单。 你用sql插入5000条测试数据,然后分别用上面两种方法测试。(计算各用多少秒)
    其实,如果就几十条数据,两种没多少差别。呵呵
      

  3.   

    刚才看到可以用deldte....in (...),这种方法是不是更好推荐这种办法,我就喜欢用这种办法。
      

  4.   


    这两种效率应该一样,楼主应该注意的是别出来一个id,就去数据库删一次,最好是把所有的id都得到了再删除,这样连接只用打开一次,关闭一次
      

  5.   

    checkbox上绑定id
    js获取选中的checkbox,继而得到对应id,放进hidden(1,3,4)
    后台"delete from table where id in (" + hidden.Value + ")"