db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ramin Moazeni" <rmoaz...@gmail.com>
Subject Re: MySQL to Derby Migration Tool
Date Fri, 23 Jun 2006 06:09:05 GMT
Thanks for your comments, Jean. I would like to add that using
DatabaseMetaData, I am able to find primary keys and foreign keys
using the methods getPrimaryKeys and getImportedKeys, but have not
been able to find a way to find out other details of a table specified
in the original create statement such as CHECK constraint.

Comments are appreciated...

Thanks much,
Ramin Moazeni

On 6/22/06, Jean T. Anderson <jta@bristowhill.com> wrote:
> Ramin Moazeni wrote:
> > Hello,
> >
> > I am a Google Summer of code participant working on the Derby
> > Migration tool project. The High level design document is posted at
> > http://wiki.apache.org/db-derby/MysqlDerbyMigration/DesignDocument
> It's great to see you doing this!
> > There are 2 approaches described in the document -- one based on the use
> > DatabaseMetaData class and the other is based on the use ddlUtils tool
> > (http://db.apache.org/ddlutils) which is also an apache project.
> In the "Approach 2: Using DdlUtils" section of
> http://wiki.apache.org/db-derby/MysqlDerbyMigration/DesignDocument ,
> there is this description:
>   In order to use DdlUtils component to migrate the source database
>   to the target database, following steps are suggested:
>    * Capture DDL file from DdlUtils.
>    * Modify the source DDL to the target DDL using Serialization and
> Deserialization of XML.
>    * Fed in the new DDL file to the DdlUtils.
> If the intent is to use the XML DDL file generated by DdlUtils,
> technically there should be no need to modify it for the target database
> -- except that there are a few issues that would need to be watched for,
> such as Derby doesn't support a boolean type. At any rate, the Java app
> can read the database model from the XML file, or even from the "live
> database" (see
> http://db.apache.org/ddlutils/api-usage.html#Reading+the+model+from+a+live+database
> ), then write that database model to the target. The DdlUtils code takes
> care of producing the SQL required to create the tables in the new database.
> > Please note that the DdlUtils doesn't support non-table entities, constraints, triggers,
stored procedures, etc.
> DdlUtils supports primary and foreign key constraints, but not check
> constraints.
> Given its limitations, your DatabaseMetaData approach might be more
> complete. But if you can use any pieces from DdlUtils, you should feel
> free to do so (with all the correct attributions, of course) since it is
> under the ASL 2.0.
>  -jean

View raw message