Skip to main content

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]

Metadata

Release files for nsj-sql-utils-lib 2.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nsj-sql-utils-lib 2.1.3
File Size Uploaded
nsj_sql_utils_lib-2.1.3.tar.gz 11.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nsj-sql-utils-lib 2.1.3
File Interpreter ABI Platform
nsj_sql_utils_lib-2.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 24.5 kB

Release files / nsj_sql_utils_lib-2.1.3.tar.gz

Download URL nsj_sql_utils_lib-2.1.3.tar.gz
Size 11.8 kB
Tags Source
SHA-256 checksum
How to use checksums
369720fa6edd117ee4941a16e96892ab40ad601446393b3ed767b4ed01319c67
BLAKE2b-256 checksum
How to use checksums
921fda1390bd2c638905556d9c9c38531ca1491a6e3662328f1adcbb3ee94939
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.2

Release files / nsj_sql_utils_lib-2.1.3-py3-none-any.whl

Download URL nsj_sql_utils_lib-2.1.3-py3-none-any.whl
Size 12.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cdee4c560fcb91542c906f162567d6d71ecc9a8e940b6f735b82d77a6e663878
BLAKE2b-256 checksum
How to use checksums
24ce1085219763d57f2197a3ce0603d39690f92e8d2ea60ebfebd79c84604bcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.2

Release history Release notifications | RSS feed

This release

2.1.3 This release

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page