You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

咨询Liquibase变更集校验和计算规则及属性替换完整文档

Liquibase变更集校验和计算规则全场景解析

不影响校验和的变更内容

以下修改不会触发校验和变化:

  • 重新格式化SQL语句以外的空白和换行
  • 修改变更集的前置条件(preconditions)
  • 修改上下文(contexts)
  • 修改标签(labels)
  • 添加validCheckSum设置
  • 修改原生XML/YAML注释或comment标签内容

属性替换对校验和的影响

针对不同变更类型,属性替换的时机与校验和计算的关系有明确区别:

  • sql类型变更集:先完成属性替换,再计算校验和
  • sqlFile类型变更集:先计算校验和,再替换外部SQL文件中的属性
  • 结构化变更集(如XML/YAML中的addColumn/createTable等):校验和计算在属性替换之后进行。这类变更的属性占位符会被先替换为实际值,再作为变更内容的一部分参与校验和计算。

示例场景说明

以你提供的XML变更集为例:

<changeSet author="[...]" id="[...]">
    <addColumn tableName="FOO">
        <column name="BAR" type="${type.string.max.80}" />
    </addColumn>
</changeSet>

其中${type.string.max.80}会被先替换为对应的实际数据库类型(如VARCHAR(80)),再基于替换后的完整变更内容生成校验和。

内容的提问来源于stack exchange,提问作者Thorsten Schöning

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 14:24:59