liquibase中的loadUpdateData,只从csv中选择一些列

gal*_*ben 2 mysql liquibase

假设有以下csv:

a,b,c
1,2,3
Run Code Online (Sandbox Code Playgroud)

其中a,b,c是列名,1,2,3是值.是否可以仅加载列a,b?

<loadUpdateData tableName="TABLE" 
            file="file.csv"
            primaryKey="a">     
            <column name="a" header="a"/>
            <column name="b" header="b"/>
</loadUpdateData>
Run Code Online (Sandbox Code Playgroud)

这将生成SQL错误,因为它将尝试插入列c.我正在使用MySQL.

Jen*_*ens 8

没有尝试过,但查看代码(for LoadDataChange)似乎有一个"跳过"列配置的选项:

if ("skip".equalsIgnoreCase(columnConfig.getType())) {
    continue;
}
Run Code Online (Sandbox Code Playgroud)

所以也许你可以为' c' 添加一个列配置并将其类型设置为"skip":

<column name="c" header="c" type="skip" />
Run Code Online (Sandbox Code Playgroud)