PostreSQL用に最初にliquibaseスキーマを定義しました。ここで、Oracleをサポートするようにスキーマファイルを変更する必要があります。<sql>
タグ付きのチェンジセットがあります。pg_catalog
テーブルにアクセスしてシーケンスに値を設定するクエリがあります。ただし、これはOracleでは機能しません。それを削除すると、Liquibaseはチェックサム検証が失敗したと文句を言います。<sql>
空のタグやその他のクエリが指定されていても文句を言います。この変更セット内には、他にも多くのcreate-tableステートメントがあるため、dbms属性からoracleを削除することはできません。このSQLがOracleで実行されないようにする方法はありますか?
2347 次
1 に答える
1
チェンジセットのdbms属性は、この問題を処理するために設計されたメカニズムです..... 1つのチェンジセット内でやりすぎを試みているように聞こえます(しかし、あなたはそれを理解していると思います)
チェックサム検証の失敗は、スキーマファイルの改ざんからデータベースを保護するために設計されたliquibaseの安全メカニズムです。
これを修正する方法は、 liquibaseを実行するときにclearChecksumsオプションを使用することです。すでにデータベースにあるチェンジセットのチェックサムを再計算するようにliquibaseに指示します。これにより、postgresデータベースインスタンスは、Oracle用に行ったチェンジセットへの変更を受け入れることができます。
于 2012-07-16T21:22:36.263 に答える