【发布时间】:2024-01-24 04:31:01
【问题描述】:
我使用 JDBC 的 batchUpdate 功能将大量数据插入到带有自动生成键的表中。因为 JDBC 没有提及 batchUpdate 和 getAutogeneratedKeys,所以我需要一些独立于数据库的解决方法。
我的想法:
在插入之前以某种方式从数据库中提取下一个分发的序列,然后手动使用密钥。但是 JDBC 没有
getTheNextFutureKeys(howMany)。那么如何做到这一点呢?正在拉钥匙,例如在Oracle 中也有事务保存?因此,只有一个事务可以提取相同的一组未来密钥。添加一个额外的列,其中包含仅在交易期间有效的虚假 id。
使用所有其他列作为辅助键来获取生成的键。这不是真正符合 3NF 的...
是否有更好的想法,或者我如何以通用的方式使用想法 1?
【问题讨论】:
标签: database oracle jdbc auto-generate batch-updates