manage-sql


Namemanage-sql JSON
Version 0.7.1 PyPI version JSON
download
home_pagehttps://github.com/webtechmoz/manage-sql.git
SummaryPython library for managing SQLite, MySQL, and PostgreSQL databases with greater efficiency.
upload_time2024-10-15 13:07:43
maintainerNone
docs_urlNone
authorWeb Tech Moz
requires_python>=3.6
licenseMIT
keywords manage-sql sqlite sqlite manager mysql mysql manager mysql python mysql connector postgresql connector postgresql postgresql python
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MANAGE-SQL DOCUMENTATION

A classe **manage-sql** foi feita de modo a facilitar a gestão e interação com bancos de dados sqlite.

## Funcionalidades
- Criação e gestão de bancos de dados sqlite, mysql e postegres.
- Definição de estruturas de tabelas usando tipos de colunas customizadas.
- Maior performance nas operações CRUD.
- Executar operações sql brutas sem depender da classe
- Método próprio para encriptar valores sensíveis como senhas.

## Instalação
Primeiro garanta que tem o python instalando. Caso não tenha o python, [clique aqui](https://www.python.org/downloads/)

Segundo, instale a biblioteca manage-sql usando o comando abaixo na linha de comandos

```bash
pip install manage.sql
```

## Métodos

Para fazer a gestão dos bancos de dados, ao importar pode fazer o *import* dependendo do tipo de banco que pretende gerir.

```python
from manage_sql import SQLITE
from manage_sql import MYSQL
from manage_sql import POSTEGRESQL
```

### Conectando com o banco
#### SQLITE
```python
from manage_sql import SQLITE

db = SQLITE(
    database = 'my_database',
    path = 'path_database'
)
```
**Parametros**
- `database`: *str* (opcional) - nome do banco de dados sqlite
- `path`: *str* (opcional) - local onde pretender colocar o banco de dados. Caso não defina, o caminho padrão será o */database*

***

#### MYSQL
```python
from manage_sql import MYSQL

db = MYSQL(
    host = 'localhost',
    username = 'mysql_user',
    password = 'user_password',
    database = 'database_name',
    port = 3306
)
```

**Parametros**
- `host`: *str* - local onde está a rodar o servidor mysql
- `username`: *str* - usuario do banco de dados
- `password`: *str* - palavra-passe do usuario mysql
- `database`: *str* (opcional) - nome do banco de dados mysql
- `port`: *int* (opcional) - a porta padrão do servidor mysql é o **3306**

***

#### POSTGRESQL
- **Conectar usando o postegres_url (dsn)**
```python
from manage_sql import POSTEGRESQL

db = POSTEGRESQL(
    postegres_url = 'postegres_url',
)
```

- **Conectar usando os parametros normais**
```python
from manage_sql import POSTEGRESQL

db = POSTEGRESQL(
    host = 'localhost',
    username = 'postgres_user',
    password = 'user_password',
    database = 'database_name',
    port = 5432
)
```

**Parametros**
- `portegres_url`: *str* - caminho para o servidor onde está alocado o banco de dados postegres. Mais detalhes consulte [clique aqui](https://www.psycopg.org/docs/connection.html#connection.dsn)
- `host`: *str* - local onde está a rodar o servidor postgres
- `username`: *str* - usuario do banco de dados
- `password`: *str* - palavra-passe do usuario postgres
- `database`: *str* (opcional) - nome do banco de dados postgres
- `port`: *int* (opcional) - a porta padrão do servidor postgres é **5432**

***
*Os métodos abaixo aplicam-se para os três bancos de dados (mysql, sqlite, postegresql). A título de exemplo a documentação tomará como base, o banco de dados **MYSQL***
***

### Criar Tabela
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.create_table(
    tablename='usuarios',
    columns=[
        db.Column(
            name='nome',
            column_type=db.Column_types.Char(60).varchar
        ),
        db.Column(
            name='username',
            column_type=db.Column_types.Char(60).varchar
        )
    ]
)
```

**Parametros**
- `tablename`: *str* - nome da tabela que pretende criar no banco de dados especificado na conexão
- `columns`: *list[Column]* - lista de colunas que pretende criar dentro da tabela.

**Nota 1:** A documentação devida do `Column` será feita em breve.
**Nota 2:** Tenha atenção aos tipos do `Column_types`, dado que cada tipo de banco de dados possui seus respectivos tipos.

***

### Inserir Dados
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.insert_data(
    tablename='usuarios',
    insert_query=[
        db.ColumnData(
            column='nome',
            value='Web Tech Moz'
        ),
        db.ColumnData(
            column='nome',
            value='webtechmoz'
        )
    ]
)
```

**Parametros**
- `tablename`: str - nome da tabela que pretende inserir os dados
- `insert_query`: *list[ColumnData]* - lista de ColumnData abaixo descritos
- `ColumnData`: ColumnDate - instância para inserir os dados nas colunas da tabela. Recebe `column` que corresponde ao nome da coluna e `value` correspondente ao valor a inserir

***

### Apagar Dados
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.detele_data(
    tablename='usuarios',
    condition=db.delete_by(
        column='id'
    ).EQUAL(
        value=1
    )
)
```

**Parametros**
- `tablename`: *str* - nome da tabela que pretende inserir os dados
- `condition`: *Filter* (opcional) - método de filtragem que permite selecionar o(s) dado(s) que pretende apagar.

**Parametros de Filtragem**
O `delete_by` deve receber uma coluna base para fazer a filtragem dos dados. Este método possui várioss metodos de filtragem abaixo indicados:
- `EQUAL`: recebe um valor em que a coluna especificada deverá ser igual `=`
- `EQUAL`: recebe um valor em que a coluna especificada deverá ser igual `!=`
- `GATHER_THAN`: recebe um valor minimo para comparação `>`
- `GATHER_OR_EQUAL`: recebe um valor que deverá ser o mínimo incluido para comparação `>=`
- `LESS_THAN`: recebe um valor máximo para comparação `<`
- `LESS_OR_EQUAL`: recebe um valor máximo incluido `<=`
- `CONTAIN`: recebe uma parte de texto para validação de strings `LIKE`
- `NOT_CONTAIN`: recebe uma parte de texto para validação de strings `NOT LIKE`

Pode tambem fazer filtragem em multiplas colunas usando as condicionais abaixo:

- **`OR`** e **`AND`**
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

# Filtrando usando o OR
db.detele_data(
    tablename='usuarios',
    condition=db.delete_by(
        column='id'
    ).EQUAL(
        value=1
    ).OR.filterby(
        column='username'
    ).CONTAIN(
        value='moz'
    )
)

# Filtrando usando o AND
db.detele_data(
    tablename='usuarios',
    condition=db.delete_by(
        column='id'
    ).EQUAL(
        value=1
    ).AND.filterby(
        column='username'
    ).CONTAIN(
        value='moz'
    )
)
```
***

### Ver os Dados
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

dados = db.select_data(
    tablename='usuarios',
    columns=['id', 'nome', 'username'],
    condition=db.filter_by(
        column='id'
    ).GATHER_OR_EQUAL(
        value=1
    )
)

print(dados)
```

**Parametros**
- `tablename`: *str* - nome da tabela
- `columns`: *list[str]* (opcional) - lista de nome das colunas que pretende retornar. Caso não especifique, irá retornar todas colunas da tabela
- `condition`: *Filter* - Para mais detalhes veja [parametros de filtragem](#Parametros-de-Filtragem)

***

### Actualizar Dados
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.update_data(
    tablename='usuarios',
    edit_query=db.ColumnData(
        column='nome',
        value='Alex Zunguze'
    ),
    condition=db.filter_by(
        column='id'
    ).EQUAL(
        value=1
    )
)
```

**Parametros**
- `tablename`: str - nome da tabela que pretende inserir os dados
- `edit_query`: *list[ColumnData]* - lista de ColumnData abaixo descritos
- `ColumnData`: ColumnDate - instância para inserir os dados nas colunas da tabela. Recebe `column` que corresponde ao nome da coluna e `value` correspondente ao novo valor a inserir
- `condition`: *Filter* (opcional) - Para mais detalhes veja [parametros de filtragem](#Parametros-de-Filtragem)

***

### Adiconar Coluna
```python
db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.add_column(
    tablename='usuarios',
    column=db.Column(
        name='idade',
        column_type=db.Column_types.Integer.integer
    )
)
```

**Parametros**
- `tablename`: *str* - nome da tabela
- `column`: *Column* - instância contendo os detalhes na coluna a ser adicionada

Mais Detalhes sobre a `Column` veja a documentação [clicando aqui](#criar-tabela)

***

### Apagar Coluna
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.drop_column(
    tablename='usuarios',
    column_name='idade'
)
```

**Parametros**
- `tablename`: *str* - nome da tabela
- `column_name`: *str* - nome da coluna que pretende apagar

***

### Apagar Tabela
```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

db.drop_table(
    tablename='usuarios'
)
```

**Parametros**
- `tablename`: *str* - nome da tabela que pretende apagar

**Atenção**: Tenha em atenção que se executar este comando perderá todos dados dentro da referida tabela.

### Comandos SQL
Caso queira rodar outras queries SQL que o `manage_sql` ainda não possua de forma nativa, pode usar o método `execute_query` conforme vem no exemplo abaixo:

```python
from manage_sql import MYSQL

db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

columns = db.execute_query(
    query='show columns from usuarios'
)

print(columns)
```

### Encriptar Valores
O `manage_sql` possui um metodo proprio para encriptar valores baseado no hash512 que geral 128 caracteres aleatórios. É util para armazenar senhas criptografadas

```python
from manage_sql import MYSQL
db = MYSQL(
    host='hostname',
    username='username',
    password='user_password',
    database='database_name'
)

hash_value = db.encrypt_value(
    value='Aa12456'
)
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/webtechmoz/manage-sql.git",
    "name": "manage-sql",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "manage-sql, sqlite, sqlite manager, mysql, mysql manager, mysql python, mysql connector, postgresql connector, postgresql, postgresql python",
    "author": "Web Tech Moz",
    "author_email": "zoidycine@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/95/a6/c97140e773c6fec0ae0323bdf733e53236f300029d41e926455728769f5e/manage_sql-0.7.1.tar.gz",
    "platform": null,
    "description": "# MANAGE-SQL DOCUMENTATION\r\n\r\nA classe **manage-sql** foi feita de modo a facilitar a gest\u00e3o e intera\u00e7\u00e3o com bancos de dados sqlite.\r\n\r\n## Funcionalidades\r\n- Cria\u00e7\u00e3o e gest\u00e3o de bancos de dados sqlite, mysql e postegres.\r\n- Defini\u00e7\u00e3o de estruturas de tabelas usando tipos de colunas customizadas.\r\n- Maior performance nas opera\u00e7\u00f5es CRUD.\r\n- Executar opera\u00e7\u00f5es sql brutas sem depender da classe\r\n- M\u00e9todo pr\u00f3prio para encriptar valores sens\u00edveis como senhas.\r\n\r\n## Instala\u00e7\u00e3o\r\nPrimeiro garanta que tem o python instalando. Caso n\u00e3o tenha o python, [clique aqui](https://www.python.org/downloads/)\r\n\r\nSegundo, instale a biblioteca manage-sql usando o comando abaixo na linha de comandos\r\n\r\n```bash\r\npip install manage.sql\r\n```\r\n\r\n## M\u00e9todos\r\n\r\nPara fazer a gest\u00e3o dos bancos de dados, ao importar pode fazer o *import* dependendo do tipo de banco que pretende gerir.\r\n\r\n```python\r\nfrom manage_sql import SQLITE\r\nfrom manage_sql import MYSQL\r\nfrom manage_sql import POSTEGRESQL\r\n```\r\n\r\n### Conectando com o banco\r\n#### SQLITE\r\n```python\r\nfrom manage_sql import SQLITE\r\n\r\ndb = SQLITE(\r\n    database = 'my_database',\r\n    path = 'path_database'\r\n)\r\n```\r\n**Parametros**\r\n- `database`: *str* (opcional) - nome do banco de dados sqlite\r\n- `path`: *str* (opcional) - local onde pretender colocar o banco de dados. Caso n\u00e3o defina, o caminho padr\u00e3o ser\u00e1 o */database*\r\n\r\n***\r\n\r\n#### MYSQL\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host = 'localhost',\r\n    username = 'mysql_user',\r\n    password = 'user_password',\r\n    database = 'database_name',\r\n    port = 3306\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `host`: *str* - local onde est\u00e1 a rodar o servidor mysql\r\n- `username`: *str* - usuario do banco de dados\r\n- `password`: *str* - palavra-passe do usuario mysql\r\n- `database`: *str* (opcional) - nome do banco de dados mysql\r\n- `port`: *int* (opcional) - a porta padr\u00e3o do servidor mysql \u00e9 o **3306**\r\n\r\n***\r\n\r\n#### POSTGRESQL\r\n- **Conectar usando o postegres_url (dsn)**\r\n```python\r\nfrom manage_sql import POSTEGRESQL\r\n\r\ndb = POSTEGRESQL(\r\n    postegres_url = 'postegres_url',\r\n)\r\n```\r\n\r\n- **Conectar usando os parametros normais**\r\n```python\r\nfrom manage_sql import POSTEGRESQL\r\n\r\ndb = POSTEGRESQL(\r\n    host = 'localhost',\r\n    username = 'postgres_user',\r\n    password = 'user_password',\r\n    database = 'database_name',\r\n    port = 5432\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `portegres_url`: *str* - caminho para o servidor onde est\u00e1 alocado o banco de dados postegres. Mais detalhes consulte [clique aqui](https://www.psycopg.org/docs/connection.html#connection.dsn)\r\n- `host`: *str* - local onde est\u00e1 a rodar o servidor postgres\r\n- `username`: *str* - usuario do banco de dados\r\n- `password`: *str* - palavra-passe do usuario postgres\r\n- `database`: *str* (opcional) - nome do banco de dados postgres\r\n- `port`: *int* (opcional) - a porta padr\u00e3o do servidor postgres \u00e9 **5432**\r\n\r\n***\r\n*Os m\u00e9todos abaixo aplicam-se para os tr\u00eas bancos de dados (mysql, sqlite, postegresql). A t\u00edtulo de exemplo a documenta\u00e7\u00e3o tomar\u00e1 como base, o banco de dados **MYSQL***\r\n***\r\n\r\n### Criar Tabela\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.create_table(\r\n    tablename='usuarios',\r\n    columns=[\r\n        db.Column(\r\n            name='nome',\r\n            column_type=db.Column_types.Char(60).varchar\r\n        ),\r\n        db.Column(\r\n            name='username',\r\n            column_type=db.Column_types.Char(60).varchar\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela que pretende criar no banco de dados especificado na conex\u00e3o\r\n- `columns`: *list[Column]* - lista de colunas que pretende criar dentro da tabela.\r\n\r\n**Nota 1:** A documenta\u00e7\u00e3o devida do `Column` ser\u00e1 feita em breve.\r\n**Nota 2:** Tenha aten\u00e7\u00e3o aos tipos do `Column_types`, dado que cada tipo de banco de dados possui seus respectivos tipos.\r\n\r\n***\r\n\r\n### Inserir Dados\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.insert_data(\r\n    tablename='usuarios',\r\n    insert_query=[\r\n        db.ColumnData(\r\n            column='nome',\r\n            value='Web Tech Moz'\r\n        ),\r\n        db.ColumnData(\r\n            column='nome',\r\n            value='webtechmoz'\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: str - nome da tabela que pretende inserir os dados\r\n- `insert_query`: *list[ColumnData]* - lista de ColumnData abaixo descritos\r\n- `ColumnData`: ColumnDate - inst\u00e2ncia para inserir os dados nas colunas da tabela. Recebe `column` que corresponde ao nome da coluna e `value` correspondente ao valor a inserir\r\n\r\n***\r\n\r\n### Apagar Dados\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.detele_data(\r\n    tablename='usuarios',\r\n    condition=db.delete_by(\r\n        column='id'\r\n    ).EQUAL(\r\n        value=1\r\n    )\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela que pretende inserir os dados\r\n- `condition`: *Filter* (opcional) - m\u00e9todo de filtragem que permite selecionar o(s) dado(s) que pretende apagar.\r\n\r\n**Parametros de Filtragem**\r\nO `delete_by` deve receber uma coluna base para fazer a filtragem dos dados. Este m\u00e9todo possui v\u00e1rioss metodos de filtragem abaixo indicados:\r\n- `EQUAL`: recebe um valor em que a coluna especificada dever\u00e1 ser igual `=`\r\n- `EQUAL`: recebe um valor em que a coluna especificada dever\u00e1 ser igual `!=`\r\n- `GATHER_THAN`: recebe um valor minimo para compara\u00e7\u00e3o `>`\r\n- `GATHER_OR_EQUAL`: recebe um valor que dever\u00e1 ser o m\u00ednimo incluido para compara\u00e7\u00e3o `>=`\r\n- `LESS_THAN`: recebe um valor m\u00e1ximo para compara\u00e7\u00e3o `<`\r\n- `LESS_OR_EQUAL`: recebe um valor m\u00e1ximo incluido `<=`\r\n- `CONTAIN`: recebe uma parte de texto para valida\u00e7\u00e3o de strings `LIKE`\r\n- `NOT_CONTAIN`: recebe uma parte de texto para valida\u00e7\u00e3o de strings `NOT LIKE`\r\n\r\nPode tambem fazer filtragem em multiplas colunas usando as condicionais abaixo:\r\n\r\n- **`OR`** e **`AND`**\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\n# Filtrando usando o OR\r\ndb.detele_data(\r\n    tablename='usuarios',\r\n    condition=db.delete_by(\r\n        column='id'\r\n    ).EQUAL(\r\n        value=1\r\n    ).OR.filterby(\r\n        column='username'\r\n    ).CONTAIN(\r\n        value='moz'\r\n    )\r\n)\r\n\r\n# Filtrando usando o AND\r\ndb.detele_data(\r\n    tablename='usuarios',\r\n    condition=db.delete_by(\r\n        column='id'\r\n    ).EQUAL(\r\n        value=1\r\n    ).AND.filterby(\r\n        column='username'\r\n    ).CONTAIN(\r\n        value='moz'\r\n    )\r\n)\r\n```\r\n***\r\n\r\n### Ver os Dados\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndados = db.select_data(\r\n    tablename='usuarios',\r\n    columns=['id', 'nome', 'username'],\r\n    condition=db.filter_by(\r\n        column='id'\r\n    ).GATHER_OR_EQUAL(\r\n        value=1\r\n    )\r\n)\r\n\r\nprint(dados)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela\r\n- `columns`: *list[str]* (opcional) - lista de nome das colunas que pretende retornar. Caso n\u00e3o especifique, ir\u00e1 retornar todas colunas da tabela\r\n- `condition`: *Filter* - Para mais detalhes veja [parametros de filtragem](#Parametros-de-Filtragem)\r\n\r\n***\r\n\r\n### Actualizar Dados\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.update_data(\r\n    tablename='usuarios',\r\n    edit_query=db.ColumnData(\r\n        column='nome',\r\n        value='Alex Zunguze'\r\n    ),\r\n    condition=db.filter_by(\r\n        column='id'\r\n    ).EQUAL(\r\n        value=1\r\n    )\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: str - nome da tabela que pretende inserir os dados\r\n- `edit_query`: *list[ColumnData]* - lista de ColumnData abaixo descritos\r\n- `ColumnData`: ColumnDate - inst\u00e2ncia para inserir os dados nas colunas da tabela. Recebe `column` que corresponde ao nome da coluna e `value` correspondente ao novo valor a inserir\r\n- `condition`: *Filter* (opcional) - Para mais detalhes veja [parametros de filtragem](#Parametros-de-Filtragem)\r\n\r\n***\r\n\r\n### Adiconar Coluna\r\n```python\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.add_column(\r\n    tablename='usuarios',\r\n    column=db.Column(\r\n        name='idade',\r\n        column_type=db.Column_types.Integer.integer\r\n    )\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela\r\n- `column`: *Column* - inst\u00e2ncia contendo os detalhes na coluna a ser adicionada\r\n\r\nMais Detalhes sobre a `Column` veja a documenta\u00e7\u00e3o [clicando aqui](#criar-tabela)\r\n\r\n***\r\n\r\n### Apagar Coluna\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.drop_column(\r\n    tablename='usuarios',\r\n    column_name='idade'\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela\r\n- `column_name`: *str* - nome da coluna que pretende apagar\r\n\r\n***\r\n\r\n### Apagar Tabela\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ndb.drop_table(\r\n    tablename='usuarios'\r\n)\r\n```\r\n\r\n**Parametros**\r\n- `tablename`: *str* - nome da tabela que pretende apagar\r\n\r\n**Aten\u00e7\u00e3o**: Tenha em aten\u00e7\u00e3o que se executar este comando perder\u00e1 todos dados dentro da referida tabela.\r\n\r\n### Comandos SQL\r\nCaso queira rodar outras queries SQL que o `manage_sql` ainda n\u00e3o possua de forma nativa, pode usar o m\u00e9todo `execute_query` conforme vem no exemplo abaixo:\r\n\r\n```python\r\nfrom manage_sql import MYSQL\r\n\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\ncolumns = db.execute_query(\r\n    query='show columns from usuarios'\r\n)\r\n\r\nprint(columns)\r\n```\r\n\r\n### Encriptar Valores\r\nO `manage_sql` possui um metodo proprio para encriptar valores baseado no hash512 que geral 128 caracteres aleat\u00f3rios. \u00c9 util para armazenar senhas criptografadas\r\n\r\n```python\r\nfrom manage_sql import MYSQL\r\ndb = MYSQL(\r\n    host='hostname',\r\n    username='username',\r\n    password='user_password',\r\n    database='database_name'\r\n)\r\n\r\nhash_value = db.encrypt_value(\r\n    value='Aa12456'\r\n)\r\n```\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python library for managing SQLite, MySQL, and PostgreSQL databases with greater efficiency.",
    "version": "0.7.1",
    "project_urls": {
        "Homepage": "https://github.com/webtechmoz/manage-sql.git"
    },
    "split_keywords": [
        "manage-sql",
        " sqlite",
        " sqlite manager",
        " mysql",
        " mysql manager",
        " mysql python",
        " mysql connector",
        " postgresql connector",
        " postgresql",
        " postgresql python"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "57e4ae08ff371ca1ef00ec4dceb2de9b75bd3dcdbdb6c24aa92944270ad7a369",
                "md5": "0cb05ae549690944d2ebae959df3c320",
                "sha256": "2e608ce533c4dd883441402798cd397e81f5bcfa529f3906a9b483afbd554546"
            },
            "downloads": -1,
            "filename": "manage_sql-0.7.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0cb05ae549690944d2ebae959df3c320",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 21199,
            "upload_time": "2024-10-15T13:07:41",
            "upload_time_iso_8601": "2024-10-15T13:07:41.905879Z",
            "url": "https://files.pythonhosted.org/packages/57/e4/ae08ff371ca1ef00ec4dceb2de9b75bd3dcdbdb6c24aa92944270ad7a369/manage_sql-0.7.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "95a6c97140e773c6fec0ae0323bdf733e53236f300029d41e926455728769f5e",
                "md5": "3c7a43163f6900a1bb242a1ebc992113",
                "sha256": "78d21b086e7550188032ed864b7b7e399be5841f8ee0225adc2607e80afa9b67"
            },
            "downloads": -1,
            "filename": "manage_sql-0.7.1.tar.gz",
            "has_sig": false,
            "md5_digest": "3c7a43163f6900a1bb242a1ebc992113",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 17159,
            "upload_time": "2024-10-15T13:07:43",
            "upload_time_iso_8601": "2024-10-15T13:07:43.851912Z",
            "url": "https://files.pythonhosted.org/packages/95/a6/c97140e773c6fec0ae0323bdf733e53236f300029d41e926455728769f5e/manage_sql-0.7.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-15 13:07:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "webtechmoz",
    "github_project": "manage-sql",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "manage-sql"
}
        
Elapsed time: 1.06593s