Domanda

Is there a way to write a liquibase addColumn changeset so it generates sql like

ALTER TABLE xxx ADD COLUMN yyy AFTER zzz;

I mean, is there a way to add an equivalent of "after column zzz" in liquibase jargon?

È stato utile?

Soluzione

With Liquibase 3.1 there are new "afterColumn", "beforeColumn" and "position" attributes on the column tag.

The documentation at http://www.liquibase.org/documentation/column.html was just updated to include them.

Altri suggerimenti

Until this is fixed, you can use 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>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top