【问题标题】:Batch update with certain batch size using NamedParameterJdbcTemplate使用 NamedParameterJdbcTemplate 以特定批量大小进行批量更新
【发布时间】:2019-01-18 18:05:59
【问题描述】:

有没有一种简单的方法可以使用 NamedParameterJdbcTemplate 以特定批次(例如 500)在数据库中插入记录。 .batchUpdate() 方法不将批量大小作为参数。我相信它会尝试在 1 个批次中插入任意数量的记录。以下是我的代码:

private void insertInBatch(List<Map<String, Object>> memberList){
String query = "Insert into table (ID) values (:id)";
namedParameterJdbcTemplate.batchUpdate(query, SqlParameterSourceUtils.createBatch(memberList))
}

MemberList 可以有很多我想批量插入的记录。 在这种情况下,单个批次插入成员与 500 个批次相比有什么优势吗?

【问题讨论】:

    标签: java spring spring-jdbc jdbctemplate batch-updates


    【解决方案1】:

    不,这是不可能的。如果您可以在数据库中的单个批次中插入的记录数有限制(例如 Oracle 的限制为 1000),则您必须编写一些东西将您的集合分成多个具有该最大大小的集合并且每次都运行batchUpdate

    【讨论】:

      猜你喜欢
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多