Журнал изменений Liquibase не содержит позицию столбца или «ПОСЛЕ имени столбца».

Чтобы создать журнал изменений базы данных для изменения таблицы, я использую Liquibase. Но журналы изменений Liquibase не содержат конкретных позиций имени столбца.

Следующий набор изменений был сгенерирован через liquibase

<changeSet author="Nevil" id="234324324324">
    <addColumn tableName="request">
        <column name="revenue" type="DECIMAL(10,2)">
            <constraints nullable="false"/>
        </column>
    </addColumn>
</changeSet>

Предположим, если я хочу, чтобы столбец revenue шел после столбца id в таблице request, Liquibase не принимает к сведению предложение AFTER в команде изменения таблицы. Фактически я не могу сделать это с помощью liquibase. Есть решение друзья?


person Nevil Jose    schedule 04.01.2012    source источник


Ответы (1)


Мне сказали, что нельзя полагаться на порядок столбцов при обработке следующего запроса:

SELECT * FROM my_table;

Всегда следует указывать требуемые столбцы:

SELECT col1, col2, col3 FROM my_table;

Следование этому совету делает порядок столбцов в таблице косметической проблемой.

Я полностью открыт для исправления, но я не думаю, что все базы данных поддерживают добавление столбцов в середине таблицы.

person Mark O'Connor    schedule 08.01.2012