我有一个使用Liquibase for PostgreSQL定义的现有模式。我正在添加对Oracle的支持,这需要进行重大更改。有些create-table标记只需更改数据类型即可工作,有些则不然(需要sql更改)。当前的changelog-schema文件在单个change-set下有多个create-table语句(我知道这不是一个好的设计,但这正是我现在要处理的),为了重用那些create-table标记,我可能必须从现有的change-set中删除它们并添加到新的change-set中。liquibase代码是使用spring注入的,因此,每当我的应用程序启动时,它都会检查数据库是否有任何更改。重构(如前所述)会影响liquibase在现有数据库上创建的哈希代码吗?如果是这样的话,我认为在这种情况下,可以为Oracle复制create-table标记。
我对LiquiBase比较陌生。如果我的理解有误,请指正。
我将尝试使用LiquiBase的特性来创建跨平台变更集,以修改生成的SQL以匹配目标数据库。