java mysql批量添加数据_java 批量插入数据(Oracle)

批量添加20000条数据用时8秒。

try {

String url = "jdbc:oracle:thin:@IP:1521:orcl"; // orcl为数据库的SID

String user = "oracle";

String password = "oracle";

StringBuffer sql = new StringBuffer();

sql.append("insert into ex_log (EX_LOG_ID,EX_LOG_DATE) values (?,?)");

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection con = (Connection) DriverManager.getConnection(url,user,password);

// 关闭事务自动提交

con.setAutoCommit(false);

Long startTime = System.currentTimeMillis();

PreparedStatement pst = (PreparedStatement) con.prepareStatement(sql.toString());

for (int i = 0; i < list.size(); i++) {

ExLog exLog = (ExLog)list.get(i);

pst.setString(1, exLog.getExLogId());

pst.setString(2, exLog.getExLogDate());

// 把一个SQL命令加入命令列表

pst.addBatch();

}

// 执行批量更新

pst.executeBatch();

// 语句执行完毕,提交本事务

con.commit();

Long endTime = System.currentTimeMillis();

System.out.println("用时:" + (endTime - startTime));

pst.close();

con.close();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2011-10-28 09:45

浏览 9416

分类:数据库

评论

2 楼

wuwhai0303

2013-03-01

50万数据怎么办呢?

1 楼

wuwhai0303

2013-03-01

内存够大么?


版权声明:本文为weixin_39683769原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。