Metadata-Version: 2.1
Name: dbcls
Version: 1.0.3
Summary: dbcls is a versatile client that supports various databases
Author: Maksim Nikitenko
Author-email: iam@sets88.com
License: BSD
Platform: any
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: kaaedit ==0.54.0
Requires-Dist: visidata ==2.11.1
Requires-Dist: aiochclient[aiohttp] ==2.4.0
Requires-Dist: ciso8601 ==2.3.0
Requires-Dist: aiomysql ==0.2.0
Requires-Dist: aiopg ==1.4.0
Requires-Dist: ssh-crypt ==1.1.8

# DbCls

DbCls is a versatile client for multiple databases, enabling the editing and preservation of SQL queries in a file, and executing queries directly from the editor, thereby providing a convenient interface for data representation.

Briefly, this application combines the kaa editor and the visidata data visualization tool.

![Editor](/data/editor.png)

![Data representation](/data/data.png)


## Installation

```bash
pip install dbcls
```


## Run

```bash
dbcls -H 127.0.0.1 -u user -p mypasswd -E mysql -d mydb mydb.sql
```


## Hotkeys

- Alt + r - Execute query under cursor or selected text
- Alt + e - Show databases list
- Alt + t - Show tables list
- Ctrl + q - Quit
- Ctrl + s - Save file

## Options

-H --host

Host to connect to

-u --user

Username to connect as

-p --password

Password to use when connecting to server

-E --engine

Database engine, options are: mysql, postgresql, clickhouse

-d --database

Database to use

-P --port

Port number to use for connection (optional)

-e --encpass

Encrypted with ssh-crypt password

# Bugs

See github issues: https://github.com/Sets88/dbcls/issues
