我试图用Java填充一个带有大约50,000行10列的结果集,然后使用batchExecute方法将它们插入到另一个表中PreparedStatement.
为了使这个过程更快,我做了一些研究,发现在将数据读入resultSet时,fetchSize起着重要的作用.
拥有一个非常低的fetchSize可能导致太多的服务器访问,并且非常高的fetchSize可以阻止网络资源,所以我尝试了一点,并设置了适合我的基础设施的最佳大小.
我正在读取此resultSet并创建插入语句以插入到另一个数据库的另一个表中.
像这样的东西(只是一个样本,而不是真正的代码):
for (i=0 ; i<=50000 ; i++) {
statement.setString(1, "a@a.com");
statement.setLong(2, 1);
statement.addBatch();
}
statement.executeBatch();
Run Code Online (Sandbox Code Playgroud)
在批量更新(50,000行10列)时,使用可更新ResultSet或PreparedStaement批量执行是否更好?