我正在清理数据库。这些过程涉及更改某些字段的格式并消除一些数据完整性问题。
我用 Spring Data 1.1 开发了一个程序来批量处理记录。@OneToOne 关系中的 2 个实体会出现问题。尽管实体 A 引用了实体 B,但实体 B 的记录不存在。如果是这种情况,我的工作是清除对实体 B 的引用。
问题是:我应该预处理数据以清理它,还是如果找不到实体,我可以调整 Spring Data 或 JPA 设置以将 null 放在字段中?
这是“正常的” - 使用这些数据 - 在实体 A 中有一个在实体 B 中不存在的 FK,所以我想在我的代码中处理这个,而不必使用额外的步骤或其他工具预处理数据. 数据将分批到达,因此任何预处理都会使用户的事情变得更加复杂。
总之,我希望 Spring Data 将该字段设置为 null 并继续该过程,而不是获取org.springframework.orm.jpa.JpaObjectRetrievalFailureException: Unable to find...
.