繁体   English   中英

新的Flyway迁移破坏了现有的jOOQ生成的代码

[英]New Flyway migrations break existing jOOQ generated code

我目前使用jOOQ从数据库中生成Java代码,并使用Flyway来管理二进制(Java)迁移以及SQL迁移。

但是,修改现有表时会遇到问题。 例如,如果我要在一次迁移中删除一列,并且过去的二进制迁移依赖于该列,则迁移将出现语法错误,因为jOOQ中不再存在该字段。

我知道我可以只注释掉迁移的主体,但是如果我无法重新运行迁移或使其变得非常乏味(运行1迁移,取消注释,运行),那将破坏Flyway或任何数据库版本管理器的整体目的接下来,生成jOOQ,等等)

有没有更好的方法来解决此问题?

我认为这是一个工作流程问题。

您每次迁移都在有效地升级API,期望该API的旧使用者继续工作将是奇迹。

jOOQ是一个很棒的工具,但是在这种情况下使用它(协助迁移)肯定会带来麻烦。

我的建议是重新考虑您的架构演进策略; 使用原始SQL(这是Flyway固有的),而让jOOQ专门为您的应用程序提供帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM