JDBC删除数据

JDBC删除数据sql

Demo: 删除数据 (删除编号是 7369 的雇员信息)app

 1 public class TestMysql {  2     //取得链接
 3     private static Connection conn =ConnectionUitl.getConnection();  4     
 5     public static void main(String[] args) {  6         System.out.println("删除的数据行数是:" + deleteById(7369));  7  }  8     
 9     public static int deleteById(Integer empno) { 10         String sql = "DELETE FROM emp WHERE empno=" + empno; 11         
12         //获取发送 sql 语句的对象
13         try { 14             PreparedStatement pst = conn.prepareStatement(sql); 15             //发送 sql 语句
16             return pst.executeUpdate(); 17         } catch (Exception e) { 18  e.printStackTrace(); 19         } finally { 20  ConnectionUitl.close(conn); 21  } 22         return 0; 23  } 24 }

Demo: 批量删除数据 (删除编号为 7654/7782/7844 的雇员信息)
  方法: 能够把要删除的雇员的编号保存到一个集合中传递这个方法进行删除ui

 1 public class TestMysql {  2     //取得链接
 3     private static Connection conn =ConnectionUitl.getConnection();  4     
 5     public static void main(String[] args) {  6         Set<Integer> empnos = new HashSet<Integer>();  7         empnos.add(7654);  8         empnos.add(7782);  9         empnos.add(7844); 10         System.out.println("删除的数据行数是: " + deleteBarch(empnos)); 11  } 12     
13     public static int deleteBarch(Set<Integer> empnos) { 14         StringBuffer sb = new StringBuffer("DELETE FROM emp WHERE empno IN("); 15         Iterator<Integer> iter = empnos.iterator(); 16         while (iter.hasNext()) { 17             sb.append(iter.next() + ","); 18  } 19         
20         sb.delete(sb.length()-1, sb.length()); 21         sb.append(")"); 22         
23         
24         //获取发送 sql 语句的对象
25         try { 26             PreparedStatement pst = conn.prepareStatement(sb.toString()); 27             //执行 sql 语句
28             return pst.executeUpdate(); 29         } catch (Exception e) { 30  e.printStackTrace(); 31         } finally { 32  ConnectionUitl.close(conn); 33  } 34         return 0; 35  } 36 }

为何使用StringBuffer 而不是String
  由于自渡船要频繁的修改,若是使用 String 会形成大量垃圾
  (String 类型一旦声明则内容不能够改变, 改变的是引用, 引用会致使垃圾产生),
  因此这种状况下使用 StringBuffer 或者 StringBuilder.spa

相关文章
相关标签/搜索