1、批处理:

当要执行某条SQL语句很多次时。例如,批量添加数据;使用批处理的效率要高的多。

2、如何实现批处理

实践:


package com.dgd.test;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.sql.*; public class Test {
public static void main(String[] args) throws SQLException, ClassNotFoundException, FileNotFoundException { //注册驱动
Class.forName("com.mysql.cj.jdbc.Driver"); //url,批处理需要添加一个参数:? 符号后面,多个参数之间用 & 符号; 添加参数为 rewriteBatchedStatements=true
String url="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT&rewriteBatchedStatements=true";
//获取连接
Connection conn = DriverManager.getConnection(url, "root", "123456");
System.out.println(conn.getClass()); //编写sql语句
String sql="INSERT INTO stu VALUES(null ,?)";
//创建 PreparedStatement 对象
PreparedStatement s = conn.prepareStatement(sql);
//设置 ? 值
for (int i = 0; i <=1000 ; i++) {
s.setObject(1,"测试数据"+i); //添加到批处理中,先攒着,本质上(底层)有一个缓冲区。先缓冲所有的要执行的SQL语句
s.addBatch();
} //循环外面,执行这组批处理
s.executeBatch();
//如果需要返回值,需要用 int[] 数组接受
// int[] executeBatch=s.executeBatch(); //关闭资源
s.close();
conn.close(); }
}

JDBC:批处理的更多相关文章

  1. Java JDBC批处理插入数据操作

    在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...

  2. Java JDBC批处理插入数据操作(转)

    在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...

  3. jdbc批处理

    批量处理允许将相关的SQL语句分组到批处理中,并通过对数据库的一次调用来提交它们,一次执行完成与数据库之间的交互. 一次向数据库发送多个SQL语句时,可以减少通信开销,从而提高性能. 不需要JDBC驱 ...

  4. JDBC批处理读取指定Excel中数据到Mysql关系型数据库

    这个demo是有一个Excel中的数据,我需要读取其中的数据然后导入到关系型数据库中,但是为了向数据库中插入更多的数据,循环N次Excel中的结果. 关于JDBC的批处理还可以参考我总结的如下博文: ...

  5. JDBC批处理---(java 对数据库的回滚) .

    1先看一下程序: package com.redking.jdbc.demo;    import java.sql.Connection;    import java.sql.DriverMana ...

  6. JDBC批处理executeBatch

    JDBC运行SQL声明,有两个处理接口,一PreparedStatement,Statement,一般程序JDBC有多少仍然比较PreparedStatement 只要运行批处理,PreparedSt ...

  7. JDBC批处理(Batch)MySQL中的表

    在数据库test里先创建表school,内容如下 向school表中一次增加多行.addBatch,executeBatch import java.sql.Connection; import ja ...

  8. JDBC批处理数据

    JDBC3.0  的增强支持BLOB,CLOB,ARRAY,REF数据类型.的ResultSet对象UPDATEBLOB(),updateCLOB(),updateArray()和updateRef( ...

  9. spring jdbc 批处理插入主健重复的数据

    1.有事务:当调用spring jdbc 的批处理的时候,在实现层加入事物,只要有插入异常的数据,整个批处理操作都会回滚.事务保证操作的原子性. 2.无事务:当没有事务的时候,批处理插入数据的时候,若 ...

  10. jdbc批处理进行多条数据插入

    package cn.linjun.demo; import java.sql.Connection; import java.sql.DriverManager; import java.sql.S ...

随机推荐

  1. HTML5的基本功能

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...

  2. 【机翻】RTnet – 灵活的硬实时网络框架

    目录 RTnet – 灵活的硬实时网络框架 0 摘要 1 介绍 2 基础服务 2.1 数据包管理 2.2 UDP/IP 实现 2.3 Driver Layer 2.4 应用程序接口 2.5 捕获扩展 ...

  3. kali2021.4a搭建pwn环境

    最近电脑重装系统(吐槽一下,win11真的一言难尽),顺便在虚拟机装了最新版本的KaliLinux,顺带着搭建一下PWN环境.总的来说这次搭建PWN环境问题不大,按照之前安装的步骤,整个过程还算是比较 ...

  4. Bugku CTF练习题---加密---凯撒部长的奖励

    Bugku CTF练习题---加密---凯撒部长的奖励 flag:SYC{here_Is_yOur_rEwArd_enjOy_It_Caesar_or_call_him_vIctOr_is_a_Exc ...

  5. [STL] set 集合

    可以用 if ( a.find(x) == a.end() ) 判断 x 在 a 中是否存在

  6. 排序算法详解(java代码实现)

    ​ 排序算法大致分为内部排序和外部排序两种 内部排序:待排序的记录全部放到内存中进行排序,时间复杂度也就等于比较的次数 外部排序:数据量很大,内存无法容纳,需要对外存进行访问再排序,把若干段数据一次读 ...

  7. AcWing-3167. 星星还是树 -c++题解(模拟退火)

    ​ 在二维平面上有 n 个点,第 i 个点的坐标为 (xi,yi).请你找出一个点,使得该点到这 n个点的距离之和最小.该点可以选择在平面中的任意位置,甚至与这 n个点的位置重合. 输入格式 第一行包 ...

  8. Base64隐写

    0x00: 前言 Base64编码的作用: 将一些特殊的字符转换成常见的字符.特殊的字符可能是不可见字符或者是大于ascii码127的,将其变成常见的字符(在base64中为a~z A~Z 0~9 + ...

  9. 『忘了再学』Shell基础 — 16、位置参数变量

    目录 1.位置参数变量$n 2.位置参数变量$*和$@ 3.位置参数变量$# 位置參数变量的作用主要用于脚本的传参. 位置參数变量的名称和作用都是确定不能改变的,但是该变量的内容是可以更改的,也就是变 ...

  10. 关于SpringBoot Admin server 监控注意事项

    当你导入了依赖 <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-bo ...