java 批量执行 sql_JDBC批量执行SQL
批量执行SQL,效率比较高,但执行SQL太多,谨防内存溢出。
代码案例一:
package com.what21.jdbc.demo05;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCDemo {
/**
* @param args
*/
public static void main(String[] args) {
// 1. 创建连接
Connection connection = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/demo","root","123124");
} catch (Exception e) {
e.printStackTrace();
}
Statement stat = null;
try {
// 2. 创建Statement
stat = connection.createStatement();
// 3. 执行SQL
String sql = "insert into users(name,email,phone,mobile) value('name','email','phone','mobile')";
String sql2 = "insert into users(name,email,phone,mobile) value('name2','email2','phone','mobile')";
stat.addBatch(sql);
stat.addBatch(sql2);
int[] results = stat.executeBatch();
for(int result : results){
System.out.println(result);
}
stat.clearBatch();
} catch (SQLException e) {
e.printStackTrace();
}
// 5. 关闭连接
if(stat!=null){
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
stat=null;
}
if(connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
connection=null;
}
}
}
代码案例二:
package com.what21.jdbc.demo05;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class JDBCDemo2 {
/**
* @param args
*/
public static void main(String[] args) {
// 1. 创建连接
Connection connection = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/demo","root","123124");
} catch (Exception e) {
e.printStackTrace();
}
PreparedStatement pstat = null;
try {
String sql = "insert into users(name,email,phone,mobile) value(?,?,?,?)";
// 2. 创建PreparedStatement
pstat = connection.prepareStatement(sql);
pstat.setString(1, "_name");
pstat.setString(2, "_email");
pstat.setString(3, "_phone");
pstat.setString(4, "_mobile");
pstat.addBatch();
pstat.setString(1, "_name2");
pstat.setString(2, "_email2");
pstat.setString(3, "_phone2");
pstat.setString(4, "_mobile2");
pstat.addBatch();
// 3. 执行
int[] results = pstat.executeBatch();
for(int result : results){
System.out.println(result);
}
// 4. 处理返回结果(这里无结果)
} catch (SQLException e) {
e.printStackTrace();
}
// 5. 关闭连接
if(pstat!=null){
try {
pstat.close();
} catch (SQLException e) {
e.printStackTrace();
}
pstat=null;
}
if(connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
connection=null;
}
}
}
java 批量执行 sql_JDBC批量执行SQL相关推荐
- SAP RETAIL 对WG22执行LSMW批量导入物料组描述信息时需要前台执行
SAP RETAIL 对WG22执行LSMW批量导入物料组描述信息时需要前台执行 在SAP RETAIL系统中,物料组的维护不再是后台配置方式了,而是以前台方式作为主数据来维护进入SAP系统上.相关事 ...
- java登录的sql语句,如何获取执行过的所有sql语句
怎么获取执行过的所有sql语句 我有一个java程序,我想获取 我登录网站执行过的所有sql语句,我的配置ibaties 有什么方法,最好有例子. 怎么获取执行过的所有sql语句 SQL Java - ...
- mysql如何批量删除索引_mysql执行大批量删除、查询和索引等操作教程
mysql执行大批量删除 执行大批量删除的时候注意要使用上limit 因为如果不用limit,删除大量数据很有可能造成死锁 如果delete的where语句不在索引上,可以先找主键,然后根据主键删除数 ...
- java修改服务器文件名,批量修改文件名 java代码
批量修改文件名 java代码 [2021-02-03 13:40:55] 简介: php实现批量修改文件名称的方法:首先使用函数[rename]实现,代码为[$path = pathinfo($cu ...
- mysql批量取消多行sql_mysql批量删除指定前缀的表,批量修改表名的SQL语句
批量删除指定前缀的表 Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where tabl ...
- sql 一次性批量插入_考虑使用SQL批量插入的安全性
sql 一次性批量插入 In this article, we'll discuss security implications of using SQL Bulk Insert and how to ...
- java批量下载demo_Java批量入库Demo
java中往数据库批量插入数据Demo java代码: //入库数据是需要批量入库的List int len =入库数据.size(); //每次循环10条 int incremnet = 10; / ...
- 《Oracle PL/SQL程序设计(第5版)》一一2.4 执行必要的PL/SQL任务
本节书摘来自异步社区出版社<Oracle PL/SQL程序设计(第5版)>一书中的第2章,第2.4节,作者:[美]Steven Feuerstein , Bill Pribyl,更多章节内 ...
- mysql 批量update sql_批量更新sql |批量update sql
zencart批量更新后台邮箱地址sql zencart批量更新后台邮箱地址sql UPDATE `configuration` SET `configuration_value` = '新邮箱地址' ...
最新文章
- vuex+vue-router拦截
- 安装python3.6-pyppeteer
- 1.10 字符串的替换(replace()、replaceFirst()和replaceAll())
- was更换java版本,WAS如何更换JDK
- skype for business server2015部署向导启动服务失败
- Ext.MessageBox.Show使用Progress
- dubbo源码解析(十)远程通信——Exchange层
- oracle中断进程,中断ORACLE数据库关闭进程导致错误案例
- c语言 误差处理 编程,C语言误差处理(平均数残差).doc
- 自学python考哪些证书-自学Python半年的姑娘告诉我,她这半年只值8元
- 使用遗传算法解决图着色问题
- 提高数据质量的方法有哪些
- 4.6 Spark SQL 数据清洗
- commons-httpclient 实现get和post请求
- window 清理maven本地仓库
- bootstrap EF_Bootstrap优秀模板INSPINIA.2.9.2
- 十六进制、二进制转换以及练习
- win10如何找计算机管理员密码,win10怎么修改administrator账户密码 win10修改管理员账户密码方法...
- 热血传奇服务端源代码分析笔记
- 北京时间校准 服务器 显示器 标准,纯干货~北京时间校准显示器实用分享