gpt4 book ai didi

java - Liquibase 在不知道名称的情况下删除约束

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:19:02 28 4
gpt4 key购买 nike

我们使用 liquibase 来跟踪我们的数据库更改..第一个 changeSet 包含这些行:

<column name="SHORT_ID" type="INTEGER">
<constraints unique="true" />
</column>

基本上这意味着 SHORT_ID 列具有唯一约束,但此约束的名称可以是任何名称并且通常每次都不同(我们针对 H2 数据库运行一些集成测试,并且每次运行测试时都会创建新的基础)

所以.. 问题是:我无法更改第一个 changeSet 但现在我们必须摆脱这个唯一约束。任何想法如何通过使用 liquibase 来实现?

最佳答案

Liquibase 提供了一种在不知道约束名称的情况下删除非空约束的实现。当问这个问题时它可能不存在(我意识到它已经很老了)。

dropNotNullConstraint

<dropNotNullConstraint catalogName="cat"
columnDataType="int"
columnName="id"
schemaName="public"
tableName="person"/>

A dropUniqueConstraint存在,但您可能已经知道它,因为它需要约束名称。

关于java - Liquibase 在不知道名称的情况下删除约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3618234/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com