Biblioteca de utilitários Python para facilitar a implementação de sistemas com acesso a banco de dados.
Project description
nsj-sql-utils-lib
Biblioteca de utilitários Python para facilitar a implementação de sistemas com acesso a banco de dados.
Principais utilitários:
-
dao_util: Módulo com utilitátios para implementação de classes DAO (exemplo: facilitar a criação da lista de fileds de um select, ou fields e values de um insert).
- dbadapter3: Classe adapter para utilizar conexões de banco de dados (útil para conexões psycopg2).
- dbconection_psycopg2: Classe para abertura de conexão com postgres, utilizando o drive psycopg2 (sem pool de conexões, nem uso do SQL Alchemy).
- db-updater: Modulo para atualização de bancos pensado para ser em um formato parecido com o erp-3
- create-script: Modulo para criação de arquivos de scripts padronizados
Utilização do db-updater:
- São duas as formas de utilizar o db-updater uma seria instalando via pip em seu projeto e chamando o mesmo da seguinte forma
python -m nsj_sql_utils_lib.updater.db_updater [parametros]
Os parametros que podem ser passados são:
parâmetro valor default descrição --dbhost DBHOST '' Database host --dbname DBNAME '' Database name --dbuser DBUSER '' Database user --dbpass DBPASS '' Database password --dbport DBPORT '' Database port --dbpath DBPATH './database' Database updatable files path --version VERSION '' Version of database files Se não informar os parametros na chamada pode-se usar as variaveis de ambiente.
variavel valor default descrição DATABASE_PATH /database Caminho para os arquivos de atualização DATABASE_HOST '' Database host DATABASE_NAME '' Database name DATABASE_PORT '' Database port DATABASE_USER '' Database user DATABASE_PASS '' Database password VERSION '' Version of database files A variável Version serve somente para que o console printe a versão dos arquivos, para poder ter um log informando qual a versão que está sendo atualizada.
-
O formato dos arquivos para a atualização precisarão serem como descrito na pasta skeleton_db:
--database ├-- functions ├-- scripts └-- views
-
Exemplo de uso:
python -m nsj_sql_utils_lib.updater.db_updater [-h] [--dbhost DBHOST] [--dbname DBNAME] [--dbuser DBUSER] [--dbpass DBPASS] [--dbport DBPORT] [--dbpath DBPATH] [--version VERSION]
- Também pode-se gerar uma imagem docker para chamar sem a necessidade de instalar via pip.
- No momento deste documento a imagem ainda não se encontra no repositório do docker então seria necessário baixar este repositorio e executar o seguinte comando:
docker build -f ./dockerfiles/updater/Dockerfile -t db-updater .
- E em seguida utilizar a imagem para chamar o atualizador
docker run -v "$PWD/database:/src/database" db-updater python -m nsj_sql_utils_lib.updater.db_updater [-h] [--dbhost DBHOST] [--dbname DBNAME] [--dbuser DBUSER] [--dbpass DBPASS] [--dbport DBPORT] [--dbpath DBPATH] [--version VERSION]
Utilização do create_script
-
Foi criado para padronizar a criação do arquivo script, pode ser instalado pelo mesmo pacote do db-updater:
parâmetro valor default descrição --filename FILENAME '' Database nome do arquivo a ser criado --scriptspath SCRIPTSPATH './database/scripts/' Caminho da pasta de scripts
python -m nsj_sql_utils_lib.updater.create_script[-h] [--filename FILENAME] [--scriptspath SCRIPTSPATH]
- Pode ser usado a forma como imagem docker:
-
docker run -v "$PWD/database:/src/database" db-updater python -m nsj_sql_utils_lib.updater.create_script [-h] [--filename FILENAME] [--scriptspath SCRIPTSPATH]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for nsj_sql_utils_lib-2.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b35391fb0cdbda3cf6a0aedd5ed57656ee0a100bddc7c2b8fa8262e005470bc |
|
MD5 | 4b75788fc3f68ffc05eb3bce716203eb |
|
BLAKE2b-256 | ae22c6690870c343f43ad3f6f4a0c68dc7e85c705d9e38d596d1f48b124ceb52 |