为 Flyway 自动生成迁移 SQL
Automatic generation of migration SQL for Flyway
当通过 Java 代码添加新模型/字段等时,JPA/Hibernate 的自动架构生成是否可能生成新的 Flyway 迁移。
捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中,以供审查/编辑/提交到项目存储库。
提前感谢您提供的任何帮助或启发。
Flyway 没有对 diff 的内置支持,我在 Maven spring 引导项目中使用 liquidbase 并且可以使用以下方法从 JPA/hibernate 更改创建更改日志:
mvn liquibase:diff
liquibase diff 的所有选项都位于此处:
http://www.liquibase.org/documentation/maven/maven_diff.html
如果您选择的 IDE 是 IntelliJ IDEA,我建议您使用 JPA Buddy 插件来执行此操作。它可以通过将您的 Java 模型与目标数据库进行比较来生成 Flyway 迁移。
您可以使用它来保持您不断发展的模型和您的 SQL 脚本同步。
此外,如果您的数据库为空,它还可以创建初始化脚本。
安装好 Flyway 并将其作为 Maven/Gradle 依赖项后,您可以像这样生成迁移:
当通过 Java 代码添加新模型/字段等时,JPA/Hibernate 的自动架构生成是否可能生成新的 Flyway 迁移。
捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中,以供审查/编辑/提交到项目存储库。
提前感谢您提供的任何帮助或启发。
Flyway 没有对 diff 的内置支持,我在 Maven spring 引导项目中使用 liquidbase 并且可以使用以下方法从 JPA/hibernate 更改创建更改日志:
mvn liquibase:diff
liquibase diff 的所有选项都位于此处: http://www.liquibase.org/documentation/maven/maven_diff.html
如果您选择的 IDE 是 IntelliJ IDEA,我建议您使用 JPA Buddy 插件来执行此操作。它可以通过将您的 Java 模型与目标数据库进行比较来生成 Flyway 迁移。
您可以使用它来保持您不断发展的模型和您的 SQL 脚本同步。 此外,如果您的数据库为空,它还可以创建初始化脚本。
安装好 Flyway 并将其作为 Maven/Gradle 依赖项后,您可以像这样生成迁移: