I wrote:


Despite a few problems in porting the stuff from MySQL, I must say that overall I'm very pleased with the result. My thanks to the Derby team.

And Thomas replied:

Thanks for letting the community know :)

If you don't mind - what were your top three pains when moving from MySQL to Derby?

Glad to, if it will be of any interest, although the problems were probably a result of our* own inexperience and naivity.

1. We used DdlUtils to do the migration, did the conversion form MySQL to xml ok, but then encountered errors on conversion to Derby. These threw us initially because they related to primary keys not being unique, but eventually we realized that this was because MediumInt is only supported in MySQL and the conversion changed it to a Small integer. I guess we should have inspected the xml schema more carefully. I had consulted the page:

http://db.apache.org/ddlutils/databases/mysql.html

And my one suggestion here is that the conversion table on that page should include the recasting of mediumint - presumably an oversight.

2. The other problems arose at runtime after apparent successful conversion, and also arose from the non-standard nature of MySQL. There were three aspects of the java code of my app that Derby took exception to. One was a JDBC ResultSet method (first()) I had used in a hack to check for empty tables. It turned out Derby didn't like this and made me use some JDBC2 method for scrolling the table. It also wouldn't allow a finally{} clause for closing a connection that it already handled itself (easy enough to remove) and wouldn't allow a faulty SQL query that MySQL had ignored (typo of GROUP instead of ORDER - for the correction of which I thank it).

So the moral is perhaps that Derby is to MySQL as Java is to Perl - it won't tolerate the sloppy habits you had become accustomed to. :-) (Apologies to the Perl community)

3. Finally, my enthusiasm to produce a neatly packaged product made me (and my app) waste time with the zipped database. Perhaps there could be a health warning about this somewhere.

David

* 'Our' because a summer student was doing this as part of a Masters project, but I needed to help him debug it.




--
_______________________________________________________________
 David P.Leader, Biochemistry and Molecular Biology
 Davidson Building, University of Glasgow, Glasgow G12 8QQ, UK
 Phone: +44 41 330-5905  http://doolittle.ibls.gla.ac.uk/leader
_______________________________________________________________

Reply via email to