jdbc批量操作的三种方法

来源:互联网 发布:三菱伺服产品选型软件 编辑:程序博客网 时间:2024/05/18 00:16

Jdbc批量操作

方法一:

Connection conn = DriverManager.getConnection(url,name,password);

conn.setAutoCommit(false); //关闭连接的自动提交

String sql = insert into table value(?);

PreparedStatement ps = conn.prepareStatement(sql);

Int Count = 0;

for(){

Set(参数);

Coount ++;

While(count%1000 == 0){

ps.addBetch();//jdbc每次执行有最大条数限制不能操作5

}

}

ps.executeBetch();    

conn.commit();  conn提交之后后面不能再做jdbc的操作了

以上适合多条相同sql语句的执行(多条相同的insert语句 update的语句执行)有点sql预编译速度快但是只能执行相同的sql语句

方法二:

Connection conn = DriverManager.getConnection(url,name,password);

conn.setAutoCommit(false); //关闭连接的自动提交

String sql1 =insert into.....;

String sql1 =update .....;

String sql1 =delete .....;(参数手动拼接到sql中)

Statement cs = conn.createStatement();

cs.addBatch(sql1);

cs.addBatch(sql2);

cs.addBatch(sql3);

ps.executeBetch();    

conn.commit();  conn提交之后后面不能再做jdbc的操作了

优点:可以操作不同的sql语句缺点不能预编译sql且执行效率低;

 

 

方法三:一个方法内要执行多个sql且有许多不同的业务逻辑

Connection conn = DriverManager.getConnection(url,name,password);

conn.setAutoCommit(false); //关闭连接的自动提交

Statement cs = conn.createStatement();

cs.executeQuery(sql)     或者   cs.executeUpdate(sql)(直接执行sql得到返回值)

原创粉丝点击