DEV Community

Cover image for Modelando um banco de dados - Para um sistema de empréstimo de computadores
Lucas Cruz
Lucas Cruz

Posted on • Edited on

Modelando um banco de dados - Para um sistema de empréstimo de computadores

olá, nesse artigo você verá um pouco sobre modelagem de banco de dados e sua implementação em app real.

Por que modelar?

Primeiramente idealmente antes de implementar qualquer solução deve existir um momento de reflexão sobre ela, sobre as possibilidades e a partir dessa reflexão desenhar um solução -- Documentar -- só depois ir implementa com a solução já descrita.

Descrevendo o contexto

Na faculdade uma das atividades que temos de banco de dados é pegar uma descrição de um sistema e a partir dessa descrição modelar um banco de dados, aqui antes de modelar descreverei o sistema.

- Descrição

O sistema tem o foco em empréstimo de computador, devem ser armazenados os dados de alunos, computadores, disciplina e empréstimo.
Dos alunos tem que deve ser guardado o número de matricula, nome do aluno e disciplina da qual faz parte, da maquina deve ser guardado o número de tombamento, da disciplina deve ser armazenado um identificador, o nome da disciplina, a hora de inicio e a hora de fim, do empréstimo dever armazenado o aluno, a máquina, a disciplina, a hora de empréstimo e a hora de devolução.
Os alunos podem fazer parte de uma ou mais disciplinas ao mesmo tempo.

DER - Diagrama entidade-relacionamento

Uma das formas de representar os dados é como diagrama entidade-relacionamento.

Considerando a descrição o diagrama fica assim:

obs: considerei chamar os computadores de "machine" para deixar mais geral. Tendo em vista que esse sistema pode ser usado para controlar outros tipos de dispositivo.

diagrama de entidade de relacionamento

Onde temos três entidades e dois relacionamentos.

Entidades: Student, Subject, Machine

Relações:

Student com Subject -> is enrroled in
Student com Machine -> to loan

A partir do DER é possível criar as tabelas.

Convertendo DER para modelo relacional

Ok, temos o DER, sabemos quais são as entidades as relações e as cardinalidades, agora é necessário converter para o modelo relacional que é usado por banco de dados relacionais.

As entidades naturalmente são convertidas para tabelas e relações muitos para muitos também se tornam tabelas ficando assim:

imagem do modelo recional

obs:
PK = chave primaria (primary key)
FK = chave estrangeira (foreign key)

Top comments (0)