用于删除或清除列中所有数据的 Liquibase 脚本

Liquibase script to delete or clear all data in the column

liquibase 中有没有一种方法可以使用 liquibase 清除 CharSkill 列中的所有数据,而不依赖于 table?

由于我会将其部署到多个用户,因此内容可能会有所不同,但列是不变的。

我可以使用删除列然后添加相同的列,但我想知道这是否是最好的方法。

之前:

用户A的角色table:

+--------+----------+-----------+
| CharID | CharName | CharSkill |
+--------+----------+-----------+
|      1 | Mickey   | Run       |
|      2 | Minnie   | Jump      |
|      3 | Donald   | Kick      |
+--------+----------+-----------+

用户B的角色table:

+--------+----------+-----------+
| CharID | CharName | CharSkill |
+--------+----------+-----------+
|      1 | Goofy    | Punch     |
|      2 | Daisy    | Laugh     |
|      3 | Pluto    | Sing      |
|      4 | Stitch   | Crawl     |
+--------+----------+-----------+

之后:

用户A的角色table:

+--------+----------+-----------+
| CharID | CharName | CharSkill |
+--------+----------+-----------+
|      1 | Mickey   |           |
|      2 | Minnie   |           |
|      3 | Donald   |           |
+--------+----------+-----------+

用户B的角色table:

+--------+----------+-----------+
| CharID | CharName | CharSkill |
+--------+----------+-----------+
|      1 | Goofy    |           |
|      2 | Daisy    |           |
|      3 | Pluto    |           |
|      4 | Stitch   |           |
+--------+----------+-----------+

没有 where 子句的简单 <update> 应该可以做到这一点:

<changeSet author="loren" id="1">
    <update tableName="character">
        <column name="charskill"/>
    </update>
</changeSet>

或者只使用 <sql> 标签:

<changeSet author="loren" id="1">
    <sql>update character set charskill=null</sql>
</changeSet>