我刚开始使用Liquibase并偶然发现了区分不同数据库功能的问题。
我们希望支持多个数据库(Oracle、MySQL、Derby - 仅举三例)。
都有不同的能力。在特定的 Oracle 支持sequences
,而 MySQL 和 Derby 不支持。
当我让 hibernate 生成 DDL 时,我可以选择不同的方言,它会考虑这些不同的功能并Sequencer
在使用 Oracle 时生成一个,在使用 Derby 或 MySQL 时使用一个普通表(用于 ID 生成)。
oracle
现在,我知道我可以通过在dbms
属性中指定 ' ' 来约束变更集。但是,我怎样才能为其他数据库做简单的表解决方案呢?似乎没有 'not oracle' 属性dbms
。
其他人如何处理这个?(我在 liquibase 页面和论坛上都找不到任何关于它的信息。)