【问题标题】:Liquibase: Add same columns to all tablesLiquibase:向所有表添加相同的列
【发布时间】:2021-12-13 01:32:40
【问题描述】:

当我使用 Liquibase 创建表时,我想将相同的列添加到所有表中,例如 idcreation_date。有可能吗? 我知道这些列将在每个表中,我真的不想将其复制粘贴到我的所有变更日志中。

也许在更改日志文件中可以插入片段?

例如:

<createTable name=“my_table”>
    <common/><!— will be replaced by my content —>
    …
</createTable>

<!— will automatically add columns like common —>
<createTable name=“my_table” extends=“common”>
    …
</createTable>

【问题讨论】:

    标签: java database migration liquibase


    【解决方案1】:

    Liquibase 不能这样工作。 Liquibase 将变更集转换为 SQL 语句。您不能在 SQL 中执行此操作,因此您不应该在 Liquibase 中执行此操作。即使添加了,在我看来,它也是不明显且难以维护的。

    【讨论】:

    • 嗯,问题不是扩展SQL,而是扩展从xml生成的过程。如果 Liquibase 可以从 xml 生成语句,我想期望能够以某种方式扩展该过程是公平的。无论如何,我在某处读过关于 Liquibase 扩展的文章,也许我应该尝试写一个
    猜你喜欢
    • 2021-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多