我想问一下,有没有办法仅在存在外键约束时才删除它?我当前的变更集如下所示:

 <changeSet author="blabla" id="10_1_1">

    <comment>Drop FK DummyFK1</comment>

    <dropForeignKeyConstraint constraintName="DummyFK1" baseTableName="DummyToken" />

</changeSet>

谢谢!

最佳答案

您需要添加preConditionsforeignKeyConstraintExists中有liquibase内置的前提条件。

<changeSet id="changeSetId" author="John Doe">
    <preConditions onFail="MARK_RAN">
        <foreignKeyConstraintExists foreignKeyName="DummyFK1"/>
    </preConditions>
    <comment>Drop FK DummyFK1</comment>
    <dropForeignKeyConstraint baseTableName="DummyToken" constraintName="DummyFK1"/>
</changeSet>

07-27 23:11