首页 > 解决方案 > 如何使用 diffExcludeObjects 配置忽略所有表中以 id 结尾的所有列?

问题描述

我想使用 liquibase maven 插件的 diff 命令忽略所有表中以“_id”结尾的所有列。当我使用此配置运行它时diffExcludeObjects=table:position, column:.*._id,差异会按预期忽略以 _id 结尾的位置的列。

但是,当我尝试更改配置以点击diffExcludeObjects=table:.*., column:.*._id忽略所有表中的所有字段的每个表时,这不是我想要的。

任何意见,将不胜感激!

标签: liquibaseliquibase-hibernate

解决方案


传入 todiffExcludeObjects等的值被视为 Java Pattern 对象(即正则表达式),因此该模式.*.匹配具有 0 个或多个重复任何字符,后跟任何字符的东西。看起来这应该与大多数表名匹配,所以我不确定为什么它没有按预期工作。

您可以尝试简化模式以.*查看是否具有预期的效果。


推荐阅读