liquibase:你能用liquibase addColumn指定"after column"吗?

Pap*_*eud 5 mysql database-migration changeset liquibase

有没有办法写一个liquibase addColumn变更集,所以它生成sql之类的

ALTER TABLE xxx ADD COLUMN yyy AFTER zzz;
Run Code Online (Sandbox Code Playgroud)

我的意思是,有没有办法在liquibase行话中添加"post zzz"之后的等价物?

Dav*_*een 10

在修复此问题之前,您可以使用modifySql.

<changeSet id="1-1" author="david">
    <comment>Add column field to example table</comment>
    <addColumn tableName="example">
        <column name="name" type="VARCHAR(50)" defaultValue="">
            <constraints nullable="false"/>
        </column>
    </addColumn>

    <!-- Use modifySql so we can insert it in the desired position -->
    <modifySql>
        <append value=" AFTER some_column"/>
    </modifySql>
</changeSet>
Run Code Online (Sandbox Code Playgroud)


Nat*_*and 9

使用Liquibase 3.1,列标签上有新的"afterColumn","beforeColumn"和"position"属性.

http://www.liquibase.org/documentation/column.html上的文档刚刚更新,以包含它们.

  • 这些列属性尚未起作用。相关错误报告:https://liquibase.jira.com/browse/CORE-1745 (2认同)