Skip to main content

Um módulo de conveniência para manipulação de bancos de dados IBM DB2 em Python.

Project description

coplin-db2

A biblioteca coplin-db2 é um módulo de conveniência para acessar bancos de dados do tipo IBM DB2, desenvolvido pela Coordenadoria de Planejamento Informacional da UFSM (COPLIN).

Com esta biblioteca, é possível definir um arquivo com credenciais de acesso ao banco de dados, no formato json, que podem ser utilizadas posteriormente:

Arquivo credentials.json:

{
  "user": "nome_de_usuário",
  "password": "sua_senha_aqui",
  "host": "URL_do_host",
  "port": 50000,
  "database": "nome_do_banco"
}

Arquivo db2_schema.sql:

CREATE TABLE USERS_TEST_IBMDB2(
    ID INTEGER NOT NULL PRIMARY KEY,
    NAME VARCHAR(10) NOT NULL,
    AGE INTEGER NOT NULL
);

INSERT INTO USERS_TEST_IBMDB2(ID, NAME, AGE) VALUES (1, 'HENRY', 32);
INSERT INTO USERS_TEST_IBMDB2(ID, NAME, AGE) VALUES (2, 'JOHN', 20);

Arquivo main.py:

import os
from db2 import DB2Connection

# arquivo JSON com credenciais de login para o banco de dados
credentials = 'credentials.json'

with DB2Connection(credentials) as db2_conn:
    db2_conn.create_tables('db2_schema.sql')
    query_str = '''
        SELECT * 
        FROM USERS_TEST_IBMDB2;
     ''' 
    df = db2_conn.query_to_dataframe(query_str)
    
    print(df)
    
    # deleta a tabela
    # db2_conn.modify('''DROP TABLE USERS_TEST_IBMDB2;''', suppress=False)

A saída esperada deve ser:

   ID   NAME  AGE
0   1  HENRY   32
1   2   JOHN   20

Instalação

Para instalar o pacote pelo pip, digite o seguinte comando:

pip install coplin-db2

Desenvolvimento

Este passo-a-passo refere-se às instruções para desenvolvimento do pacote. Se você deseja apenas usá-lo, siga para a seção Instalação.

  1. Instale o Python Anaconda na sua máquina

  2. Crie o ambiente virtual do anaconda e instale as bibliotecas necessárias com o comando

    conda env create -f environment.yml
    
  3. Construa o pacote:

    python -m build
    
  4. Instale-o localmente com

  5. Este repositório já conta com uma GitHub Action para publicar automaticamente no PyPi e TestPyPi. Consulte o arquivo python-publish.yml para detalhes da implementação.

    Todos os commits serão enviados para o TestPyPi, mas apenas commits com tags serão enviados para o PyPi:

    # alguma modificação no código fonte
    # ...
    git add .
    git commit -m "mensagem do commit"
    git tag -a <tag_name> -m "título da versão"
    git push origin main  # envia o commit para o repositório e o pacote para TestPyPi
    git push origin <tag_name>  # publica a tag e envia o pacote para o PyPi
    

    Onde <tag_name> é um número no formato, por exemplo, v1.4.1.

    Use apenas os comandos git tag -a <tag_name> e git push origin <tag_name> quando quiser publicar o pacote no canal PyPi!

    Um tutorial de publicação com GitHub Actions está disponível neste link

Contato

Biblioteca desenvolvida originalmente por Henry Cagnini: henry.cagnini@ufsm.br

Caso encontre algum problema no uso, abra um issue no repositório da biblioteca.

Pull requests são bem-vindos!

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

coplin_db2-1.4.3.4.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

coplin_db2-1.4.3.4-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file coplin_db2-1.4.3.4.tar.gz.

File metadata

  • Download URL: coplin_db2-1.4.3.4.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for coplin_db2-1.4.3.4.tar.gz
Algorithm Hash digest
SHA256 548c5eae45bf9121441550dd3d674cbcf6b31d552a77fdaf44c71e17a7aa88ac
MD5 cb77ec877bfaba6df93889adacd2019b
BLAKE2b-256 5556f3c6838cda22eda8730aa9bfb24ed525c0123e92e0b821b0b8437ba30ab7

See more details on using hashes here.

File details

Details for the file coplin_db2-1.4.3.4-py3-none-any.whl.

File metadata

  • Download URL: coplin_db2-1.4.3.4-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for coplin_db2-1.4.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0d891087e68f05d9e84b8b9dd398631b9d0c84ab3c2e94e79e961dc65c70c79b
MD5 4f82307d3a497c37c3f8952bec241411
BLAKE2b-256 077c876cc0f98d7128fb5063855274374df8224fa700927d347f093b66fc909b

See more details on using hashes here.

Supported by

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