Skip to content

Schema Visualization

Visualize database schemas as Entity-Relationship Diagrams.

Terminal window
# Interactive HTML diagram
sql-splitter graph dump.sql -o schema.html

Open schema.html in a browser for an interactive diagram with:

  • Dark/light theme toggle
  • Pan and zoom
  • Click to highlight relationships
Terminal window
sql-splitter graph dump.sql -o schema.html

Best for exploration and presentations.

Terminal window
sql-splitter graph dump.sql -o schema.mmd --format mermaid

Embed in Markdown documentation:

```mermaid
erDiagram
users {
INT id PK
VARCHAR name
VARCHAR email
}
orders {
INT id PK
INT user_id FK
}
orders }|--|| users : user_id
```
Terminal window
sql-splitter graph dump.sql -o schema.dot

Render with Graphviz:

Terminal window
dot -Tpng schema.dot -o schema.png
dot -Tsvg schema.dot -o schema.svg
dot -Tpdf schema.dot -o schema.pdf

Or use --render:

Terminal window
sql-splitter graph dump.sql -o schema.png --render
Terminal window
sql-splitter graph dump.sql --json -o schema.json

For programmatic processing.

Terminal window
sql-splitter graph dump.sql --tables "user*,order*" -o filtered.html
Terminal window
sql-splitter graph dump.sql --exclude "log*,audit*,temp*" -o clean.html

Show a table and everything it depends on:

Terminal window
sql-splitter graph dump.sql --table orders --transitive -o orders-deps.html

Show a table and everything that depends on it:

Terminal window
sql-splitter graph dump.sql --table users --reverse -o users-deps.html
Terminal window
sql-splitter graph dump.sql --table orders --transitive --max-depth 2

Find circular foreign key dependencies:

Terminal window
sql-splitter graph dump.sql --cycles-only

Output:

Circular dependencies found:
orders → payments → invoices → orders

Visualize cycles:

Terminal window
sql-splitter graph dump.sql --cycles-only -o cycles.html
Terminal window
# Horizontal (left-to-right)
sql-splitter graph dump.sql --layout lr -o horizontal.html
# Vertical (top-to-bottom)
sql-splitter graph dump.sql --layout tb -o vertical.html
Terminal window
sql-splitter graph dump.sql -o schema.mmd --format mermaid

Include in README.md:

## Database Schema
```mermaid
%%{init: {'theme': 'dark'}}%%
erDiagram
...
```
  1. Generate Mermaid output
  2. Paste into Mermaid code block
  1. Generate HTML
  2. Embed in an iframe or link directly