更新时间:2022-08-25 来源:黑马程序员 浏览量:

当向数据库发送多条不同的SQL语句时,可以使用Statement实现批处理。Statement通过addBatch()方法添加一条SQL语句,通过executeBatch()方法批量执行SQL语句。为了帮助大家更好地学习如何使用Statement实现批处理,下面通过一个案例来演示。
Example10.java
package cn.itcast.jdbc.exanple;
inport java.sql.Connection;
inport 
java.sgl.Statenent;
inport cn.itcast.jdbc.example.utils.JDBCUtils;
public 
class Example10 (
   public static void main (String[] args) {
      Connection conn=null;
      Statement stmt=nul1;
      try {
          //加载数据库驱动
          conn=JDBCUtils.getConnection();
          stmt=conn.createStatement ();
          //SQL语句
      String sgl1="DROP 
TABLE IF EXISTS school";
      String sql2="CREATE TABLE school(id int,name 
varchar(20))";
      String sql3="INSERT INTO school 
VALUES(2,'传智播客')";
      String aql4="UPDATE school SET id=1";
          //Statement 批处理 sQL语句
          stmt.addBatch(sql1);
          stmt.addBatch(sq12);
          stmt.addBatch(sq13);
          stmt.addBatch(sql4);
          stmt.executeBatch();
      } catch (Exception e) {
          e.printStackTrace();
      }finally{         //释放资源                 
         ARpCUtils.release(nul1, stmt, conn);        
      }
   }
}程序运行过程中,Statement会将4条SQL语句提交给数据库一起执行。为了验证上述中的SQL语句是否执行成功,进入MySQL,使用SELECT语句查看school表,SQL语句的执行结果如下所示。mysql>select * from school; +-------+-----------+ | id | name | +-------+-----------+ | 1 | 传智播客 | +-------+-----------+ I row in set (0.00 sec)从上述结果可以看出,school表存在,并且向表中添加了一条数据,该数据的id被成功修改成了1。
1024首播|39岁程序员逆袭记:不被年龄定义,AI浪潮里再迎春天
2025-10-241024程序员节丨10年同行,致敬用代码改变世界的你
2025-10-24【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19