Liquibase Index“PRIMARY_KEY_xx”属于约束

时间:2017-12-04 16:22:35

标签: liquibase

我有下表(让我们称之为TBL),我正在尝试从中删除主键。底层数据库是H2。

<createTable tableName="TBL">
        <column name="ID" type="BIGINT">
            <constraints primaryKey="true" primaryKeyName="TBL_PK"/>
        </column>
        ...

尝试在以后的变更集中使用以下脚本,我遇到了以下错误。

<dropPrimaryKey tableName="TBL" constraintName="TBL_PK" />

错误:

Caused by: org.h2.jdbc.JdbcSQLException: Index "PRIMARY_KEY_xx" belongs to a constraint; SQL statement:
ALTER TABLE TBL DROP PRIMARY KEY [90085-140]

知道我缺少什么吗?

我知道有dropIndex,但我不知道如何定位PRIMARY_KEY_xx(以便在以后的阶段保持通用)。

1 个答案:

答案 0 :(得分:1)

我猜这个问题与H2 db有关。当您创建PK时,它会创建一些约束。 尝试用查询找到它:
select * from information_schema.constraints where table_name='TBL' and column_list='ID'