2

Grailsデータベース移行プラグインに移行ファイルのプロパティを定義して、Liquibaseで可能なように、データベースに依存しない移行を定義できるようにする方法はありますか?

私は試してみました:

databaseChangeLog = {
property([name:"boolean.type", value:"bit(1)",dbms:"mysql" ])
property([name:"boolean.type", value:"number(1,0)", dbms:"oracle"])
...
} 

コロンの定義でそれを使用する:

changeSet(author: "me", id: "121112341-1") {
createTable(tableName: "test_table") {
...
column(name: "my_column", type: "${boolean.type}")
...
}
}

しかし、それは機能しません...

4

1 に答える 1

1

Groovyファイル"${boolean.type}"にはGStringがあるため、Groovyはtype変数のプロパティを解決しようとしていますboolean。Groovyが文字列をそのままにして、Liquibaseにdbms固有の置換を行わせるには、一重引用符を使用する必要があります。

column(name: "my_column", type: '${boolean.type}')
于 2013-01-23T00:37:09.453 に答える