.. |br| raw:: html
.. |github_link| raw:: html Github .. |java_power_tools| raw:: html Java Power Tools Overview =================== SchemaSpy is a Java-based tool (requires Java 8 or higher) that analyzes the metadata of a schema in a database and generates a visual representation of it in a browser-displayable format. It lets you click through the hierarchy of database tables via child and parent table relationships as represented by both HTML links and entity-relationship diagrams. It's also designed to help resolve the obtuse errors that a database sometimes gives related to failures due to constraints. SchemaSpy comes with ABSOLUTELY NO WARRANTY. |br| SchemaSpy is free software licensed and distributed under LGPL version 3 or later |br| SchemaSpy can be redistributed under the conditions of LGPL version 3 or later. |br| http://www.gnu.org/licenses/ If you like SchemaSpy, don't forget to give us a star on |github_link|. SchemaSpy produces dot-file and uses either the dot executable from `Graphviz `_ or embedded `viz.js `_ to generate graphical representations of the table/view relationships. This was initially added for people who see things visually. Now the graphical representation of relationships is a fundamental feature of the tool. Graphvis is not required to view the output generated by SchemaSpy, but the dot program should be in your PATH (not CLASSPATH) or use the ``-gv`` or ``-vizjs`` arguments, else none of the entity relationship diagrams will be rendered. SchemaSpy uses JDBC's database metadata extraction services to gather the majority of its information, but has to make vendor-specific SQL queries to gather some information such as the SQL associated with a view and the details of check constraints. The differences between vendors have been isolated to configuration files and are extremely limited. Almost all of the vendor-specific SQL is optional. SchemaSpy was mentioned in one of the O'Reilly's book |java_power_tools|