Real Ultimate Programming

The Home for People Who Like to Flip Out and Write Code

SchemaSpy: A Maintenance Developer's Best Friend

If you’ve ever joined a team that maintains a large legacy database, then you’ve probably wished for something like SchemaSpy. There are a lot of tools that let you get visualizations of a legacy database, but what sets SchemaSpy apart is that it generates HTML output so you can run it once and then view the results in your browser instead of having yet another desktop application open. I like to tell people it’s sort of like Javadoc for databases.

There is one small problem, though, at least if you want to use it on an Oracle database—the terminology from the SchemaSpy documentation doesn’t exactly match up with Oracle terminology. Here’s an example of the command to invoke SchemaSpy against an Oracle db: java -jar schemaSpy.jar -t orathin -u _username_ -p _password_ -o schemaspy-output -cp _path-to-ojdbc14.jar_ -db _sid_ -host localhost -port 1521 -s _schema-name_

Back to flipping out…