我创建了一个新的变更集以向现有表中添加一个新列,如下所示。我还将密钥属性添加到用户组表的 hbm.xml 文件中。它确实根据日志被拾取,并成功运行,但它没有显示在 databasechangelog 表中,并且更改没有反映在 usergroup 表中。
<changeSet author="changeTest" id="2018-10-25">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="USERGROUP" columnName="USERROLE"/>
</not>
</preConditions>
<addColumn tableName="USERGROUP">
<column name="USERROLE" type="VARCHAR(50 ${varcharUnit})" />
</addColumn>
<update tableName="USERGROUP">
<column name="USERROLE" type="VARCHAR(50 ${varcharUnit})" value="user"/>
<where>USERNAME = 'user1'</where>
</update>
</changeSet>
键属性位于复合 ID 元素下,前面有 2 个键。
<key-property name="userRoleInGroup" type="string" >
<column name="userRole" default="user"/>
</key-property>
我是否错过了一些更新过程?