JDBC之SQL批处理

说明:本文JDBCUtils工具类在https://blog.csdn.net/qq_15076569/article/details/82191167已经附上源码

一:批处理核心就是调用Statement对象executeUpdate方法。注意:批处理只针对DML语句


import com.itheima.utils.JDBCUtils;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Arrays;

public class JDBCBatchTest {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stat = null;
        try {
            conn = JDBCUtils.getConnection();
          
            stat = conn.createStatement();
            
            String sql1 = "insert into account values(null,'赵丽颖',3000),(null,'王丽坤',2000);";
            String sql2 = "update account set money = 66666 where aid = 1;";
            String sql3 = "delete from users where uid > 5;";
            String sql4 = "update users set password='pw123' where uid in(1,2,3);";
            //String sql5 = "select * from users;";

            //方式一: 分步执行(一个SQL语句调用一次executeUpdate())
            /*int num1 = stat.executeUpdate(sql1);
            int num2 = stat.executeUpdate(sql2);
            int num3 = stat.executeUpdate(sql3);
            int num4 = stat.executeUpdate(sql4);*/

            //方式二: 批处理
            //添加SQL语句到批处理指令中
            stat.addBatch(sql1);
            stat.addBatch(sql2);
            stat.addBatch(sql3);
            stat.addBatch(sql4);
           // stat.addBatch(sql5);
            //执行批处理
            int[] arr = stat.executeBatch();    //数组记录的就是该批处理指令中每一个SQL语句的执行结果.
            System.out.println(Arrays.toString(arr));

            //清除批处理执行
            stat.clearBatch();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            JDBCUtils.release(conn,stat);
        }
    }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值