20

a と b の 2 つの列を持つ既存の mysql テーブルがあります。

そのテーブルに列 c を追加したいと思います。

c は、列 b の値が 10 である行を除いて、NULL のデフォルト値を持つ必要があります。b の値が 10 の場合、c の値は X でなければなりません。

SQL を使用してこれを行うのはかなり簡単であることは理解していますが、スキーマの移行に使用するのは liquibase であるため、liquibase を使用してこれを行いたいと考えています。

4

3 に答える 3

41

あなたはすでにこのようなことを試しましたか?

<addColumn tableName="SGW_PRODOTTI_INFO_ATTRIBUTE">
    <column name="AlternativeListPrice" type="double" defaultValue="0.0">
    <constraints nullable="true"/>
    </column>
</addColumn>
于 2012-12-19T09:27:56.447 に答える
6

プレーンSQLを使用しない最善の解決策は次のとおりだと思います:

変更セット内で両方の変更を使用することを選択できますが、liquibase トランザクション/ロールバックの目的で、個別の変更セットでそれぞれを分離することをお勧めします。

于 2014-02-06T13:27:13.687 に答える