API capaz de realizar consultas dinâmicas utilizando ORM SQLAlchemy.
Conforme as orientações para realização da parte 2 do trabalho da disciplina de Banco de Dados II da Universidade Federal de Itajubá, a equipe desenvolveu uma API responsável por realizar as consultas nas tabelas do banco. O MER utilizado está presente na Figura abaixo e os payloads para requisições estão na pasta requests.
Componentes do Projeto:
As orientações estão divididas nos seguintes tópicos:
- SELECT
- JOIN
- WHERE
- ORDER BY
- AGREGGATION
- ORDER BY
A aplicação utiliza um banco relacional presente no modelo entidade relacionamento abaixo:
Para realizar a conexão com o banco utilizou-se:
SQLAlchemy - 1.4.48
No geral, para executar a aplicação é recomendado que o sistema já possua:
> Python 3.11
Para executar essa API é necessário:
# Criar o banco com nome IGDB para realizar a carga
# Clone este repositório com
$ git clone https://github.com/MatMB115/ad_hoc_igdb_back_end
# OU
$ git clone [email protected]:MatMB115/ad_hoc_igdb_back_end.git
# Navegue até o diretório clonado com terminal
$ cd ad_hoc_igdb_back_end
# Instale as dependências
$ pip install -r reqs.txt
# Abra script no Vscode ou editor de preferência
$ code .
# No DAO, mude as credenciais de acesso do banco (lembre-se de criar um banco com o nome IGDB pelo SGDB)
$ engine = create_engine("postgresql+psycopg2://postgres:postgres@localhost:5432/IGDB")
# Rode o script pelo terminal
$ py controller.py
# OU
$ python3 controller.py
O ponto de início deste projeto foi um ambiente Python, as dependências utilizadas estão presentes no 'reqs.txt'.
Dependências:
-> Python 3.11
- Flask 2.5.5
- SQLAlchemy 2.3
- psycopg2 2.9.6
- annotated-types 0.5
- sqlacodegen 3.0.0rc2
- CORS 4.0.0
Banco de Dados:
-> PostgreSQL
- pgAdmin4 7.0
Utilitários:
-> Dev
- Visual Studio Code 1.78
Matheus Martins 🧑💻 |
Matheus Martins 🧑💻 |