使用Liquibase从模型和Db中删除唯一键约束

时间:2019-08-21 14:51:06

标签: mysql jhipster liquibase

我有一个spring boot项目,我有一个实体,上面有唯一的密钥约束。我不想手动删除此约束,因为它可能会影响我的CI / CD部分,但无论如何我都可以使用Liquibase来做到这一点。

2 个答案:

答案 0 :(得分:0)

当然,如果您使用的是YAML,则可能看起来像这样:

changeSet:
  id: dropUniqueConstraint-example
  author: liquibase-docs
  changes:
  - dropUniqueConstraint:
      catalogName: cat
      constraintName: const_name
      schemaName: public
      tableName: person
      uniqueColumns: A String

请在此处找到文档:https://www.liquibase.org/documentation/changes/drop_unique_constraint.html

答案 1 :(得分:0)

您在这里。您只需要简单地将它添加到您的变更日志文件中,然后让CI / CD来完成其工作即可。还是在本地配置了H2,您还可以在本地查看更改。

我复制了以下官方文档中提到的内容,对您有用。

XML

<changeSet author="liquibase-docs" id="dropUniqueConstraint-example">
    <dropUniqueConstraint catalogName="cat"
            constraintName="const_name"
            schemaName="public"
            tableName="person"
            uniqueColumns="A String"/>
</changeSet>

YML

changeSet:
  id: dropUniqueConstraint-example
  author: liquibase-docs
  changes:
  - dropUniqueConstraint:
      catalogName: cat
      constraintName: const_name
      schemaName: public
      tableName: person
      uniqueColumns: A String

JSON

{
  "changeSet": {
    "id": "dropUniqueConstraint-example",
    "author": "liquibase-docs",
    "changes": [
      {
        "dropUniqueConstraint": {
          "catalogName": "cat",
          "constraintName": "const_name",
          "schemaName": "public",
          "tableName": "person",
          "uniqueColumns": "A String"
        }
      }]

  }
}
相关问题