Skip to main content

CLI tool for converting SQL table dependencies to mermaid.js format.

Project description


PyPI - License GitHub Workflow Status (with event) PyPI PyPI - Python Version

sql2mermaid-cli

sql2mermaid-cli is a CLI tool that converts SQL query into mermaid.js style!.

output-image

Required

Python >=3.8.1

Installation

To install sql2mermaid-cli, use the following command:

$ pip install sql2mermaid-cli

Getting Started

As a preparation, create a sample SQL file.

$ echo "with bar as (select * from baz)\n\
select * from foo inner join bar on foo.id = bar.id\n"> input.sql

The basic usage of sql2mermaid-cli is as follows:

$ sql2mermaid-cli -i input.sql

This will output the mermaid diagram to the console:

graph LR

bar([bar])
root([root])

baz[(baz)]
foo[(foo)]

bar --> baz
root --> foo
root --> bar

The Mermaid diagram that is outputted can be visualized on the Mermaid Live Editor website.

Mermaid Live Editor

Options

To save the output to a file, use the -o option followed by the path to the output file:

$ sql2mermaid-cli -i input.sql -o output.txt

By default, the output format is plain text. To output the mermaid diagram in markdown format, use the -m option:

$ sql2mermaid-cli -i input.sql -o output.md -m

You can also specify either "upper" or "lower" after the -d option to display the join type of SQL in the mermaid diagram.

$ sql2mermaid-cli -i input.sql -d upper

This will output the mermaid diagram to the console:

graph LR

bar([bar])
foo([foo])

root[(root)]
baz[(baz)]
foo.id[(foo.id)]
bar.id[(bar.id)]

bar -- FROM --> baz
bar -- FROM --> foo
foo -- INNER JOIN --> bar

Author

License

This project is licensed under the MIT License - see the LICENSE.md for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sql2mermaid_cli-1.0.1.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

sql2mermaid_cli-1.0.1-py3-none-any.whl (7.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page