Skip to main content

Projeto que visa padronizar a comunicação com alguns bancos de dados

Project description

pymaxdb

Projeto que visa padronizar a comunicação com alguns bancos de dados.

Objetivo

  • Padronizar a conexão com bancos de dados distintos;
  • Utilizar métodos padronizados para realizar operações em bancos de dados;
  • Melhorar controle de operações que envolvem atualizações em bancos de dados.

Instalação

pip install pymaxdb

Utilização

A comunicação é realizada através da instanciação da classe conexao, que recebe em um de seus parâmetros o nome do banco de dados que se deseja conectar. O parâmetro nome_conexao recebe nomes pré-definidos, que podem ser: Postgres, (conexão PostgreSQL), DBMakerODBC (necessário criação prévia de uma conexão DBMaker ODBC), SQLServerODBC (conexão SQL Server ODBC) e Firebird (conexão Firebird).

from pymaxdb import conexao

try:
    # Conexão PostgreSQL
    con = conexao(nome_conexao='postgres', host='127.0.0.1', port='5432', db='nome_database', usr='usuário', pwd='senha')

    # Conexão DBMaker ODBC
    # con = conexao(nome_conexao='dbmakerodbc', db='nome_dsn', usr='usuário', pwd='senha')  
    
    # Conexão SQL Server ODBC
    # con = conexao(nome_conexao='sqlserverodbc', db='nome_dsn', usr='usuário', pwd='senha')
    
    # Conexão Firebird
    # con = conexao(nome_conexao='firebird', host='127.0.0.1', port='3050', db='/caminho_database/nome_database.fdb', usr='usuário', pwd='senha')

    con.executar('insert into nome_database values(1)')
    
    con.efetivar() # commit

    rs = con.consultar('select * from nome_database')
    print(rs)

    proximo_registro = con.proxima_chave('nome_database', 'campo_chave')
    print(proximo_registro)

    con.fechar() # close connection       
except Exception as e:    
    print(e)

O pacote também possui mais algumas classes e funções utilitárias:

  • conexao_dbmaker
    • Permite controlar a quantidade de tentativas de conexão ao banco de dados DBMaker, no caso do número de conexões permitidas exceder.
from pymaxdb import conexao_dbmaker

try:
    con_dbmaker = conexao_dbmaker(tentativas_conexao=3, dsn='nome_dsn', usr='usuário', pwd='senha').conectar()
    print(con_dbmaker.consultar('select * from nome_database'))
    con_dbmaker.fechar()
except Exception as e:
    print(e)
  • remove_ace
    • Recebe uma string e retorna apenas letras sem acentuação, números e espaços.
from pymaxdb import remove_ace

rem_ace = remove_ace('Composto so de espaço, e/ou tabulação e/ou quebra de linha & números 1, 2 e 3')
print(rem_ace)
  • configurador
    • Recebe o caminho completo de um arquivo de configuração separado por sessões do tipo chave e valor e retorna um dicionário ou o valor de uma chave, dependendo do método chamado.
[config1]
chave1 = valor1
chave2 = valor2

[config2]
chave1 = valor1
chave2 = valor2
from pymaxdb import configurador

config = configurador(file_config='config/config.cfg')

dic_config = config.get_sessao('config2') # retorna um dicionário com itens da sessão config2
print(dic_config)

valor_config = config.get_item_sessao('config1', 'chave2') # retorna o valor da chave2
print(valor_config)

config.set_file_config('config/config2.cfg') # define outro arquivo de configuração

arquivo_config = config.get_file_config() # retona o nome do arquivo de configuração
print(arquivo_config)

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

pymaxdb-1.0.3.tar.gz (5.0 kB view hashes)

Uploaded Source

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