Metadata-Version: 2.1
Name: auto-reports-sql
Version: 1.0.1
Summary: This tool automates SQL Reports generation.
Home-page: https://github.com/naveeng2402/auto-reports-sql.git
Author: Naveen G
License: MIT
Keywords: sql,automation,data science,data analytics,sqlite,mysql,postgres
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click
Requires-Dist: click-config-file
Requires-Dist: jsonschema
Requires-Dist: jinja2
Requires-Dist: colorama

# SQL Automation

This is a simple tool to run a set of sql queries and generate a HTML report of the results

# How to use the tool

### Install the tool using pip

```bash
pip install auto-reports-sql
```

### Create a json file with the following schema

```json
{
  "type": "array",
  "items": {
    "type": "object",
    "required": ["name", "query"],
    "properties": {
      "name": {
        "type": "string",
        "pattern": "^.*$"
      },
      "query": {
        "type": "array",
        "items": {
          "type": "string",
          "pattern": "^.*$"
        }
      }
    }
  }
}
```

> Example

```json
[
  {
    "name": "First 10 data",
    "query": [
      "select * from Person limit 10",
      "select * from Person order by name desc limit 10"
    ]
  }
]
```

### Run the program with the following command

```
Usage: auto-reports-sql execute [OPTIONS] QUERIES

Options:
  -t, --threads INTEGER           No. of threads used for computation
                                  [default: 10]
  -rt, --report-title TEXT        Title of the generated report.  [default: Report Title]
  -d, --db [sqlite|mysql|postgres]
                                  The database which is used.  [required]
  -dp, --db-path PATH             Sqlite database path. Only required if the
                                  database is set to 'sqlite'
  -h, --host TEXT                 host of the database. Only required if the
                                  database is not set to 'sqlite'
  -u, --username TEXT             username to access the database. Only
                                  required if the database is not set to
                                  'sqlite'
  -p, --password TEXT             password of the database. Only required if
                                  the database is not set to 'sqlite'
  -n, --db-name TEXT              name of the database. Only required if the
                                  database is not set to 'sqlite'
  --config FILE                   Read configuration from FILE.
  --help                          Show this message and exit.
```

# Report Examples

![Screenshot](images/report.jpg)

# Possible Updates

- Errors in the queries are not taken into account
