如何将 validchecksum 指定为 liquibase 格式的 sql?

How do I specify validchecksum to any in liquibase formatted sql?

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

中的任何内容的正确语法是什么?

这是我试过的

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

它不起作用。

请帮忙!谢谢!

文档说:

Special value "1:any" will match to any checksum

不确定为什么要输入“build-1.3:ANY”?

您还可以做的是:

  • 使用最新的 liquibase 更改在空数据库上执行您的代码
  • DATABASECHANGELOG table 中查找具有您一直在更改的变更集 ID 的行
  • 复制 MD5SUM 值并将其作为值 validCheckSum
  • 粘贴到您的 changeSet 定义中

它应该 运行 在任何已经执行变更集且没有错误的数据库上。

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