package cabby;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
* 批处理演示
* @author Cabby
*
*/
public class BatchDemo {
public static void main(String[] args) {
batchSql();
}
public static void batchSql(){
String sql="insert into mytemp_xxx(id) values(?)";
Connection conn=null;
PreparedStatement stmt=null;
try {
conn=JDBCUtil.getConnection();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
conn.setAutoCommit(false);
stmt=conn.prepareStatement(sql);
for(int i=1;i<=105;i++){
stmt.setInt(1, i);
//把sql语句加入批处理
stmt.addBatch();
//每10条记录处理一次
//避免批处理中的sql语句太多
if(i%10==0){
//执行
stmt.executeBatch();
//清除
stmt.clearBatch();
}
}
//执行最后的5条sql
stmt.executeBatch();
conn.commit();
} catch (SQLException e) {
try {
//发生异常时回滚
conn.rollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
e.printStackTrace();
}finally{
try {
stmt.close();
JDBCUtil.close(conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
点击查看更多内容
4人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦