0

テーブル変更のデータベース変更ログを生成するには、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後に配置したい場合、liquibase は、alter table コマンドの AFTER 句に注意を払わないとします。実際、私はリキベースではそれを行うことができません。解決策の友達はいますか?idrequest

4

1 に答える 1

1

次のクエリを処理するときに、列の順序に依存できないと言われました。

SELECT * FROM my_table;

必要な列を常に指定する必要があります。

SELECT col1, col2, col3 FROM my_table;

このアドバイスに従うと、テーブル内の列の順序が表面的な問題になります。

私は修正に対して完全にオープンですが、すべてのデータベースがテーブルの途中に列を追加することをサポートしているとは思いません。

于 2012-01-08T22:49:09.817 に答える