0

Liquibase で次のようなカスタム SQL ブラケットを使用したいと考えています。

<sql>
  CREATE TRIGGER insert_${param1}_trigger
    BEFORE INSERT ON ${param1}
      FOR EACH ROW BEGIN
        SET NEW.created_at = NOW();
        SET NEW.updated_at = NOW();
      END
</sql>

この関数をいくつかの異なる変更セットで呼び出し、param1 を指定したいと思います。<property name="name" value="value"> タグでプロパティを指定し、${name} 変数を入力してファイルに挿入された値を取得できるため、逆の機能が可能であることはわかっています。ただし、パラメーターを指定して、上記の sql を変更セットに含めることを検討しています。より一般的な XML または SQL のアプローチも歓迎します。

4

2 に答える 2

1

あなたが探しているのは、カスタム変更または変更拡張機能のいずれかだと思います

どちらも、パラメーターを取り、実行する必要がある SQL を作成できる Java クラスを指定できます。

于 2013-10-29T18:26:36.740 に答える
0

changelog をパラメーター化する方法を確認しましたか?

ドキュメントによると:

パラメータ値は次の順序で検索されます。

  • パラメータとして Liquibase ランナーに渡されます。

  • JVM システム プロパティとして。

  • DatabaseChangeLog ファイル自体のパラメーター ブロック (タグ) 内。

于 2014-04-01T21:16:17.207 に答える