首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修改实体后,Liquibase验证失败

修改实体后,Liquibase验证失败
EN

Stack Overflow用户
提问于 2018-09-21 17:32:59
回答 2查看 413关注 0票数 0

我想将一个字段的数据类型从字符串更改到日期。所以我把桌子丢在了分局。然后修改清算库文件并运行应用程序。现在,它使用以下消息进行抱怨。

liquibase.exception.ValidationFailedException:验证失败:

在此之后,我恢复了清算库文件的更改,并运行了应用程序。这一次没有错误,但它没有创建表。

请帮我解决这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-21 18:31:46

我认为失败的验证是有关校验和的错误。当您修改已经执行的变更集并尝试再次执行它时,就会发生这种情况。

Liquibase将所有已执行的变更集保存在一个名为databasechangelog的表中,这样它就可以找出在执行过程中可以跳过哪些变更集。

若要再次执行更改集,请删除此表中的相应内容,然后再次运行Liquibase。

票数 2
EN

Stack Overflow用户

发布于 2018-09-21 19:14:22

当使用Liquibase时,您不应该(通常)修改Liquibase之外的数据库--主要的例外是如果您是一个开发人员,在您自己的私有开发数据库上工作。如果您处于这种状态(处理您自己的私有数据库),那么当您修改Liquibase之外的数据库(即删除一个表)时,您还需要删除DATABASECHANGELOG表中的行,该表对应于表create语句,这样当您重新运行liquibase update时,它将重新创建该表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52448568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档