Skip to content

Compatibility

RedG is able to work with the most common database systems. All you need is a JDBC driver. The Code Generator internally uses SchemaCrawler which supports a wide range of database systems. You'll probably need an extra SchemaCrawler plugin, so consult the table below or see Maven Central for a full list.

DBMS Necessary extra dependency Example project
H2 Dependency included in RedG redg-examples/redg-example-h2
Oracle us.fatehi:schemacrawler-oracle:15.01.06 redg-examples/redg-example-oracle
IBM DB2 us.fatehi:schemacrawler-db2:15.01.06 No example, support untested
MS SQL Server¹ us.fatehi:schemacrawler-sqlserver:15.01.06 No example, support untested
MySQL² us.fatehi:schemacrawler-mysql:15.01.06 redg-examples/redg-example-mysql
MariaDB² us.fatehi:schemacrawler-mariadb:15.01.06 No example, untested, probably like MySQL
PostgreSQL us.fatehi:schemacrawler-postgresql:15.01.06 redg-examples/redg-example-postgres
Sybase IQ us.fatehi:schemacrawler-sybaseiq:15.01.06 No example, support untested

¹ You need to turn QUOTED_IDENTIFIER on or change the character to escape identifiers from double quotes to backticks by customizing the JavaSqlStringEscapeMap.
² You need to either enable ANSI mode for the database or the connection or change the character to escape identifiers from double quotes to backticks by customizing the JavaSqlStringEscapeMap.

After the code is generated, it can be used to insert data into basically every DBMS with proper SQL support. When you insert the data directly with JDBC, the driver needs proper support for setObject, when generating SQL statements you might have to implement your own InsertValuesFormatter, so RedG uses the correct functions for e.g. string to date conversion.

If you run into issues with a certain DBMS or just want to tell us that it works, feel free to open an issue or contact us.