This PHP script creates graphs out of MySQL database schemas
The graphic is built with SVG and can be interacted with.
To use, just edit schemagraph.php with the appropriate database connection details and then run it from a web server.
- Tables in the schema are placed equidistantly around a circle.
- Clicking the image causes the graph to rotate.
- Foreign key constraints are represented by bézier curves connecting table labels.
- Hovering over a table or a constraint causes the table's label to highlight along with all of its constraint paths (both incoming and outgoing).
- The paths representing incoming foreign key constraints are highlighted in a different color than outgoing constraints.
- Multiple constraints between the same two tables are prevented from overlapping by giving a unique curve to each of the lines.
- Hovering over a constraint produces a tooltip which shows the names of the fields that are linked by the constraint.