delete from test where sid in(1,2,3)

解决方案 »

  1.   

    组合成一条效率高些吧
    delete from test where sid=1 and sid = 2 and sid = 3 
      

  2.   

    就目前的形式来看
    第二个减少了网络量流。性能要高些.类似于oracle的pl/sql
      

  3.   

    我不是说SQL语句的写法问题,上面只是一个例子
    是说executeUpdate执行一个组合语句好些,还是分开执行好些
      

  4.   

    回3楼但是第二个要多次调用executeUpdate方法,第一个只调用一次。我主要是遇到这个问题:
    修改一个表中的数据时,先在该表中删除原数据,然后执行插入操作。如果在一个事务中,则会出现主键重复,(因为一个删除语句还没提交),所以想组合在一起,一次调用executeUpdate方法执行
      

  5.   

    有些性能和数库有些关系.
    oracle对sql的处理机制.用邦定变量执行的效率要高的多.
    但不论怎么说。减少了网络的(open)是把sql组全发送.不是流量的问题。而是打开网络的时间
      

  6.   

    程序不能单纯的从效率角度来考虑。从实际应用的角度来说,分开来更能捕获到数据库的异常,并且对其进行处理。
    从效率角度而言,都是delete语句,并没有返回结果集。可能差别会非常非常的微小。抱歉楼主,没能回答你的问题。因为我没读过statement.executeUpdate()的源码。