Banco relacional do Projeto Interdisciplinar
Este repositório contém o script, que implementa um banco de dados PostgreSQL normalizado. Este banco é projetado para gerenciar usuários e administradores, focado em rastreamento de atividades.
- Um servidor PostgreSQL em execução.
- Crie um novo banco de dados (ex:
meu_projeto_db). - Execute o script completo neste banco de dados.
O script é idempotente, o que significa que ele pode ser executado várias vezes sem causar erros. A seção R E S E T no início do script garante que todas as estruturas antigas (tabelas, funções, views) sejam derrubadas com CASCADE antes de serem recriadas.
usuario: Armazena os dados dos usuários da plataforma.admin: Armazena os dados dos administradores do sistema.log_rpa: Tabela para registro de logs de processos de Automação (RPA).
log_admin: Registra todas as alterações (INSERT,UPDATE,DELETE) na tabelaadmin. UsaJSONBpara dados antigos/novos.log_usuario: Registra todas as alterações na tabelausuario.acesso_diario: Registra o primeiro acesso de cada usuário por dia (DAU).
Nota de Arquitetura: As tabelas de log (log_admin, log_usuario, acesso_diario) usam ON DELETE SET NULL. Isso garante que, se um usuário ou admin for removido, seu histórico de auditoria e acesso seja preservado
func_autenticar_e_registrar_acesso(p_Email VARCHAR, p_Senha VARCHAR)- O que faz: Função central de login. Verifica as credenciais do usuário e, se estiverem corretas, registra o acesso diário (DAU) na tabela
acesso_diario. - Retorna:
INTEGER(onCdUsuario) em caso de sucesso, ouNULLem caso de falha.
- O que faz: Função central de login. Verifica as credenciais do usuário e, se estiverem corretas, registra o acesso diário (DAU) na tabela
proc_adicionar_usuario(...)proc_adicionar_admin(...)proc_remover_usuario(Email VARCHAR)proc_remover_admin(Email VARCHAR)
view_stats_rpa- O que faz: Agrupa as estatísticas de log do RPA por status (
INFO,ERROR, etc.), mostrando contagens e datas.
- O que faz: Agrupa as estatísticas de log do RPA por status (
view_idade- O que faz: Calcula a idade (em anos) de todos os administradores cadastrados.
- Kear_07 por Nutria