On 3/16/06, Valicek Arnost <[EMAIL PROTECTED]> wrote: > I found this interesting tool DDLUtils, but it isn't supporting Inforxmix > database, so I'd like to create support for Informix.
Yes, because we don't currently have access to an Informix server. However I just saw that it is possible to download a trial version of Informix Dynamic Server Express Edition, so I might give it a go. > After looking to souce code, it seems, that I shoud implement some classes in > org.apache.ddlutils.platform.[informix] package. > > Is there any documentation which describes what is need to support new > database? Or should I learn it from implementation for other databases :) The steps that I take to implement a new platform are as follows: * Create a package, e.g. org.apache.ddlutils.platform.informix, and create a platform class (InformixPlatform) in it that inherits from PlatformImplBase * Add the jdbc driver classname and jdbc subprotocol as constants to the platform class * Register the platform class in PlatformFactory (including against the driver classname and the subprotocol) * Create in src/test a jdbc.properties.informix file with the appropriate JDBC settings * Get the datatype tests to run with the these tests, i.e. that they really access the database (though they'll most likely fail) * Add a model reader and if necessary, a sql builder implementation to the package * Register the native type mappings in the platform, and override methods in the model reader/sql builder as needed so that the datatype tests run successfully * Override methods in the model reader and sql builder as needed so that the constraint and alteration tests run successfully Tom