批量处理SQL语句
来源:互联网 发布:淘宝买家秀模特兼职 编辑:程序博客网 时间:2024/05/28 11:30
/**
*批量处理
*/
@Test
public void testBatch(){
Connection conn=null;
PreparedStatement preStatement=null;
try {
conn=JDBCTools.getConnecition();
//1,批量处理,可以理解为一个事物,所以,首先开启事物
JDBCTools.beginTx(conn);
String sql="insert into customer(id,name,work) values(?,?,?)";
preStatement=conn.prepareStatement(sql);
long begin=System.currentTimeMillis();
for(int i=0;i<10000;i++){
preStatement.setInt(1, i+1);
preStatement.setString(2, "name_"+i);
preStatement.setString(3, "work_"+i);
//1,积攒SQL
preStatement.addBatch();
//2,当积攒到一定的程度的时候,执行sql,并且清空先前积攒的Sql
if(((i+1)/300)==0){
preStatement.executeUpdate();
preStatement.clearBatch();
}
}
//3,事物结束的时候,可以提交事物
JDBCTools.commit(conn);
long end=System.currentTimeMillis();
System.out.println(end-begin);
} catch (Exception e) {
JDBCTools.rollback(conn);
e.printStackTrace();
}finally{
JDBCTools.release(null, conn, null);
}
}
}
*批量处理
*/
@Test
public void testBatch(){
Connection conn=null;
PreparedStatement preStatement=null;
try {
conn=JDBCTools.getConnecition();
//1,批量处理,可以理解为一个事物,所以,首先开启事物
JDBCTools.beginTx(conn);
String sql="insert into customer(id,name,work) values(?,?,?)";
preStatement=conn.prepareStatement(sql);
long begin=System.currentTimeMillis();
for(int i=0;i<10000;i++){
preStatement.setInt(1, i+1);
preStatement.setString(2, "name_"+i);
preStatement.setString(3, "work_"+i);
//1,积攒SQL
preStatement.addBatch();
//2,当积攒到一定的程度的时候,执行sql,并且清空先前积攒的Sql
if(((i+1)/300)==0){
preStatement.executeUpdate();
preStatement.clearBatch();
}
}
//3,事物结束的时候,可以提交事物
JDBCTools.commit(conn);
long end=System.currentTimeMillis();
System.out.println(end-begin);
} catch (Exception e) {
JDBCTools.rollback(conn);
e.printStackTrace();
}finally{
JDBCTools.release(null, conn, null);
}
}
}
0 0
- 批量处理SQL语句
- sql语句批量处理
- 处理数据批量生成sql插入语句
- sql语句批量处理,通过linux执行sql脚本
- 批量处理JDBC语句
- 批量更新sql 语句
- SQL 批量更新语句
- sql语句批量执行
- SQL批量替换语句
- sql语句-批量替换
- 批量执行 SQL 语句
- 批量修改 SQL语句
- 批量执行sql语句
- 批量sql语句
- sql批量update语句
- 批量执行sql语句,对sql语句中是否有';'的判断及其处理
- sql 批量添加sql语句
- SQL批量生成SQL语句
- @Autowired与@Resource的区别
- 带干扰的验证码
- 使Eclipse下支持编写HTML/JS/CSS/JSP页面的自动提示
- Min Stack
- 按钮的单选框
- 批量处理SQL语句
- 输出字符串所有组合(含有重复的字符)及输出其所有子串(含有重复的字符)
- 数据挖掘150道试题 测测你的专业能力过关吗?
- AnimatorSet的使用
- 路由及路由器工作原理深入解析1:概述
- android关于点九图的制作
- 九度oj 1076
- POJ 2488:A Knight's Journey 深搜入门之走马观花
- HDU 1166 敌兵布阵 线段树 部分和 点更新