Liquibase database object creation

I’m looking into using EMERSE with either Postgres or SQL Server rather than Oracle.

I’m not very familiar with Liquibase, so this may be a basic question. Would it be possible to use this tool with the ChangeSet files that come with EMERSE to generate the DDL scripts to create the necessary database objects in a new database?

I know we could create new DDL scripts based on the included Oracle scripts, but this seems like maybe a faster alternative.

If the changes are phrased as XML elements (like <createTable tableName="...">), then Liquibase can generate slight variations to create the tables or constraints based on the database it’s connected to, but if it’s just running SQL in a .sql file or in a bare <sql> tag, then it won’t make such changes. We have a mix of those as I recall in the liquibase files, so it won’t be too straightforward. In addition to that, we have a few procedures in pl/sql which we used to do more complex migrations from older schemas to newer ones, and those will have to be translated by hand to the pl/sql language of the target database. So, I’d just hand-translate the DDL for creating a database from scratch, and ignore the liquibase files.

But worse than that, we use some oracle-only SQL inside the application. (See the sqlbean.xml file inside the emerse-service jar inside the emerse-ui war.) Those queries will also have to be adapted for a non-oracle database.

TL;DR we don’t really support non-Oracle databases and liquibase won’t help too much, so it won’t be easy to install on another system.