SchemaSpy analyzes schema metadata, letting you click through the hierarchy of your tables' parent/child relationships either via entity-relationship diagrams or through HTML tables. It works with just about any RDBMS given an appropriate JDBC driver. SchemaSpy also identifies several common schema anomalies.
SchemaSpy is available at http://schemaspy.sourceforge.net/ and currently supports Oracle, DB2, SQL Server, MySQL, Firebird, PostgreSQL, HSQLDB, Informix, Sybase, MaxDB, Firebird and Derby (JavaDB).
You can browse a sample of its output at http://schemaspy.sourceforge.net/sample/
Highlights of Release 4.0.0:
- Foreign Key relationships can now be defined when a foreign key doesn't exist in the database. That and many additional metadata settings can now be specified via XML.
- Compact view of relationships page now hides non-PK / non-indexed columns to reduce clutter and clarify the relationships.
- jQuery is now used for DOM manipulation.
- Added support for Derby (JavaDB) databases, both embedded and network.
- Added support for SQL Server with jTDS driver.
- Added support for SQL Server 2005.
- Added support for MaxDB.
- New -schemas option (similar to -all) for evaluating multiples with databases like MySQL where a database isn't composed of multiple schemas.
- Significantly improved performance of generation of entity-relationship diagrams.
- Better Unicode support resolve table name to URL mapping issues that show up with Japanese table names.
- Now allows for customizable 'get row count' SQL as a way to improve performance.
- New -font and -fontsize options.
- Many additional bugs were fixed.