我们目前非常陷入以下情况:
我们有几个 JPA 映射的实体,其中 ID 通过@GeneratedValue(strategy = GenerationType.TABLE)
注释自动生成,ORM 是 Hibernate 4。此外,我们使用 liquibase 来管理数据库迁移。
现在我们遇到一种情况,迁移涉及创建新表,并且必须将现有表中的数据迁移到新表。新表(即根据实体)已经命名了 ID 生成策略。问题是我们如何在 liquibase 迁移中为新添加的行创建 ID,从而满足以下约束:
- 必须可以生成执行迁移的 SQL 脚本(通过 liquibase)(因此不能使用用于迁移的自定义类)
- 迁移必须针对 HSQLDB 和 Oracle 运行
- 当然,Hibernate ID 生成不能被破坏
非常感谢您对此问题的任何帮助!