I'm on the hunt for an open (read: free) application to compare database structure, tables, indexes and contents. A diff-like program that would generate sql patch files. It should be able to connect to almost any database (or even read the files directly).

So far I've found dbdiff2, a 1994 Unix app that appears to work on Informix databases and maybe others -- I'll have to check. There's also the commercial application DBDiff which has pretty much exactly the functionality I'd like, but it runs on Windows and it's a closed app. So, I'm almost there. Hints, as ever, extremely welcome.

Also found: XML Diff, a Java app to aid merging differences between xml documents. Worth a look I think, but a little later.