0
我必须在表上添加一列,如果它不存在。
列名:myColumn
表名:myTable的
使用Groovy语言和Liquibase,我想检查是否存在列,并创建它,如果它不存在。
Liquibase
XML
根据我的搜索中,XML的方式来完成,这将是:
<changeSet id="myChangeSet" author="me">
<preconditions onFail="WARN">
<not>
<columnExists tableName="myTable" columnName="myColumn" />
</not>
</preconditions>
<addColumn tableName="myTable">
<column name="myColumn" type="text" default="null" />
</addColumn>
</changeSet>
Groovy的
至于Groovy版本,我不确定,我没有已知的方式来测试它。
changeSet(id:'myChangeSet', author:'me') {
preconditions(onFail:'WARN') {
not() {
columnExists(tableName='myTable' columnName='myColumn')
}
}
addColumn(tableName:'myTable') {
column(name:'myColumn' type:'text') {
constraint(default:'null')
}
}
}
而且我不确定Grrovy语法是如何将上层XML版本转换为Groovy的。
如何将XML变更集转换成Grovy,告诉我?
如果您已经在使用Liquibase,您确实不需要具备先决条件。 – SteveDonie