🎲
Banco de Dados com MySQL
  • 📜README
  • 🎯TABLE OF CONTENTS
  • 🚪INTRO
    • 🎲Banco de Dados: Conceitos e Definições
    • 🗣️Análise de Requisitos
  • 🗃️MODELAGEM DE DADOS
    • ✈️Modelo Entidade-Relacionamento
      • 👤Entidades
      • 🫂Relacionamentos
      • 💪Atributos
        • 🧠Tipos de atributos
    • 🏫Escola: modelo conceitual
      • ♻️Conversão do MER para MR
  • 🚧DDL
    • 🧮Tipos de Dados no MySQL
      • 🔢Tipos numéricos
      • 🔠Tipos textuais
      • 📆Tipos de data e hora
    • ♻️Conversão do modelo ER para o modelo relacional
    • 🧱Criar a estrutura do banco de dados
    • 🪚Alterar tabelas
  • 📑DML
    • 📝INSERT
    • 🔎SELECT
      • 📈Funções de agregação
      • 😁Junções de tabelas
    • ✏️UPDATE
    • ❌DELETE
  • 👩‍💻STORED OBJECTS
    • 🗃️STORED OBJECTS
      • 👁️Views
      • 📑Procedures
      • 📋Funcions
      • 🔫Triggers
Powered by GitBook
On this page
  • Step 1. Traduzir as entidades e seus respectivos atributos
  • Representando as chaves primárias (PK)
  • Representando os atributos compostos e multivalorados
  • Step 2. Mapear os relacionamentos

Was this helpful?

Edit on GitHub
  1. DDL

Conversão do modelo ER para o modelo relacional

Depois de modelar o banco utilizando o modelo conceitual entidade-relacionamento (ER), partimos para o mapeamento do modelo para o modelo relacional. Nesta página, temos um step by step para isso.

PreviousTipos de data e horaNextCriar a estrutura do banco de dados

Last updated 1 year ago

Was this helpful?

Step 1. Traduzir as entidades e seus respectivos atributos

No diagrama ER que representa as entidades no banco de dados aqui abordado, temos as entidades: Estudante, Disciplina e Docente. No processo de tradução do MER para o MR, as entidades são traduzidas para tabelas do banco de dados.

Os atributos das entidades, respectivamente, são convertidos em colunas das tabelas. Note que, nas representações das tabelas, as figuras têm uma espécie de losango pintado em azul claro. Isso quer dizer que essas colunas não podem receber valores nulos — isto é, tem a propriedade NN (NOT NULL). Quando as colunas podem receber valores nulos (NULL), essa figura fica em branco.

Inicialmente, mantivemos os tipos padrões definidos no Workbench. Entretanto, precisaremos aplicar os tipos de dados adequados para cada atributo/coluna mapeado, conforme vimos anteriormente. Sabemos que existe um tipo mais adequado que o VARCHAR para representar uma data armazenada no banco, certo?

Representando as chaves primárias (PK)

Na representação ilustrada acima, também podemos perceber as chaves primárias (PRIMARY KEY) das nossas tabelas referentes às entidades. Forçamos uma coluna cujo padrão de nomenclatura é id + <nome da tabela>. Por exemplo:

  • a tabela Estudante tem como 🔑 chave primária (PK) o idEstudante;

  • a tabela Docente tem como 🔑 PK a coluna idDocente;

  • e a tabela Disciplina tem como 🔑 PK a coluna idDisciplina.

Representando os atributos compostos e multivalorados

Pelas regras de conversão do MER para o modelo relacional, atributos compostos e atributos multivalorados são convertidos em tabelas do banco de dados. Logo, a representação da figura 2, acima, não é capaz de representar, de fato, os requisitos de tal mini-mundo. Neste caso, precisaremos:

  • Converter o atributo em uma tabela do banco de dados, cujas colunas podem ser representadas pelo ddd e o numero do telefone.

  • Converter o atributo em uma tabela contendo as colunas: logradouro, numero, complemento, bairro e cep.

Step 2. Mapear os relacionamentos

Ao modelar o banco de dados, definimos que o relacionamento entre um docente e uma disciplina é uma associação representada pelo diário de classe — uma turma virtual, com data de início e conclusão da disciplina.

Sabe-se também que os estudantes cursam várias disciplinas e estas, por sua vez, são lecionadas pelos docentes. É daí que vem a associação entre docente e disciplina — formando uma entidade associativa.

🚧
♻️
Descrição da declaração de uma tabela usando a representação do MySQL Workbench.
Representação das tabelas Estudante, Docente e Disciplina, correspondentes à entidades representados no diagrama entidade-relacionamento.
Tabelas Estudante, Docente e Disciplina mapeadas a partir das entidades representadas no diagrama ER, agora com seus respectivos atributos.
Drawing
Drawing
Drawing