0

ある日、私は自分の dba が大好きになり、今日は...

Grails アプリでは、データベース移行プラグイン (Liquibase ベース) を使用して移行などを処理します。

すべてが素敵に機能します。

すべてのテーブルでサポートする必要がある db 管理メタデータのセットがあるとのことです。この情報は、アプリにはまったく使用されません。

これで、これに対応するためにモデルを簡単に更新できます。しかし、その答えは醜いです。

問題は、移行のたびに Liquibase/database-migration プラグインが発生し、スキーマとモデルが同期していないことを訴えます。

列 x、y、z を無視することを Liquibase (または GORM) に伝える方法はありますか?

私が避けようとしているのは、次のような変更セットです。

changeSet(author: "cwright (生成された)", id: "1333733941347-5") { dropColumn(columnName: "BUILD_MONTH", tableName: "ASSIGNMENT") }

スキーマをモデルに合わせて戻そうとします。これらの列に、モデルに適用されないという注釈を付けることができるのは良いことです。

4

1 に答える 1

0

残念ながら、この時点で、独自のマッピングブロックを定義し、データマッパー(Hibernateが本質的に何であるか)を自分で制御する方がおそらく良いでしょう。データベース統合プラグインが移行を処理する方法を制御する必要がある場合は、ソースを確認する、JIRAで問題を提起することをお勧めします。単純に、ドメインモデルで列を明示的にマッピングすると、DBから不要な列をバイパスできるようになります。

于 2012-04-07T04:36:38.660 に答える