微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 liquibase 格式的 sql 中为任何指定有效校验和?

如何解决如何在 liquibase 格式的 sql 中为任何指定有效校验和?

我遇到了 liquibase 的问题。所以,我在其中一个变更集中的 sql 命令中犯了一个错误。现在每当我尝试升级我的部署时,升级都会由于错误的校验和而失败。 所以我想到做 validCheckSum : ANY workaround 并遇到了这个问题,但它不起作用。所以我的问题是,我的语法是否有任何错误以及如何绕过校验和检查或在 liquibase 格式的 sql 中设置 any 的正确语法是什么。

这是我试过的

--changeset darth: build-1.3
--validCheckSum: build-1.3:ANY

它不起作用。

请帮忙!谢谢!

解决方法

文档说:

特殊值“1:any”将匹配任何校验和

不知道你为什么要输入“build-1.3:ANY”?

您还可以做的是:

  • 在空数据库上执行包含最新 liquibase 更改的代码
  • DATABASECHANGELOG 表中查找包含您已更改的变更集 ID 的行
  • 复制 MD5SUM 值并将其作为 validCheckSum 值粘贴到您的变更集定义中

它应该可以在任何已执行变更集的数据库上运行而不会出错。

值得一提的是,不建议更改更改集:通过设置 validCheckSum 值,您将已执行“旧”更改集,并且将跳过对此更改集的“新”更改。将在空数据库上执行您的“新”变更集,因此您可能会出现模型不一致的情况。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。