我正在使用 spring 的 NamedParameterJdbcTemplate batchUpdate 将批处理插入到 Oracle 11g 数据库中。
我建立了我的参数数组,并将它与我的 sql 一起传递给 batchUpdate 方法,如下所示:
namedParameterJdbcTemplate.batchUpdate(UPDATE_SQL, parameterArray);
这很好用。
但是,如果批次中只有一条坏记录,则整个批次更新失败。
这种行为是可配置的吗?我希望插入有效记录,并通过捕获异常来处理无效记录。
通俗地说,我听说如果你的数据库支持这个,你应该可以做到,但我看不到任何标志来打开它。这可能是错误信息。
我尝试将自动提交设置为 true,但我认为这不起作用,因为它会提交批处理。
我试图捕获 SQLException,然后对连接进行手动提交,但我还没有开始工作。
所以我真的想知道我想做的事情是否可能?一个坏记录不会回滚其余批次的批量更新?