Pregunta

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?

¿Fue útil?

Solución

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.

Otros consejos

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>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top