DEV Community

Ortiz de Arcanjo António David
Ortiz de Arcanjo António David

Posted on

1 1

Atributos e Tabelas para Estados

Na medida que os requisitos de um Sistema aumentam, é comum aumentarmos o número de tabelas, atributos e fazermos muitas verificações que tornam difícil aimplementação. Uma sugestão para fazer verificações é usando atrubutos de estado.

O uso de atributos de estado evita várias verficações de campos nulos. Nesse caso podemos usar os valores Sim e Não, Activo e Inactivo, 0 e 1, entre outros. Caso a tabela tenha muitos estados, é recomendado separar os estados numa outra e referenciar a tabela origem.

Onde usar os atributos e tabelas de estado?

Podemos usar atributos e tabelas de estados para:

  • Activar e desactivar funcionalidades;
  • Verificar se uma operação foi efectuada;
  • Verificar se um item foi modificado ou excluído;
  • No caso de formulários com muitos campos, divivir em secções e verificar se já foram preenchidas;
  • Muitos outros.

Exemplo:Preenchimento de formulário de Candidatura num Sistema de Inscrições para Vagas de Emprego.
Requisitos: Neste cenário, sabemos que um candidato deve preencher os formulários com os dados pessoais, endereço, formação acadêmicas, experiências profissionais e os documentos requeridos. As candidaturas submetidas, inicialmente têm o estado ‘Pendente’ e depois da selecção tem o estado ‘Aprovada’.
Sugestão para a Solução: Podemos dividir o formulário em partes e criar estado para verificar cada formulário submetido e mostrar a opção de submeter a candidatura depois de todos os formulários estiverem preenchidos.

Modelo Conceitual
Image description

Código SQL
Image description

Fases do preenchimento
Image description

Formulário de Candidatura
Image description

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs