Banco de Dados - Curso Técnico

Desenvolvimento de Sistemas

🔗 Aula 05: Análise de Diagramas Entidade-Relacionamento (DER)

📚 Objetivo da Aula

Nesta aula, você aprenderá a analisar Diagramas Entidade-Relacionamento (DER) e implementar relacionamentos entre tabelas no Supabase. O foco é na análise pedagógica dos DERs para compreender as estruturas de dados antes da implementação prática no Supabase.

🎯 Metodologia

Análise de DER → Implementação no Supabase

📊 32 Exercícios

Casos práticos diversos para análise

💻 Prática

Implementação direta no Supabase

🔍 Análise

Foco na compreensão do DER

📋 Exercícios Práticos de Análise de DER

Analise cada DER e implemente as tabelas no Supabase seguindo as tarefas de análise. Não há código SQL pronto - você deve criar as tabelas baseando-se na análise do DER!

👤 Exercício 1: Sistema de Usuários

🎯 Objetivo:

Analisar um sistema básico de usuários com perfis e implementar no Supabase.

📋 DER - Diagrama Entidade-Relacionamento:

USUARIOS
id (PK)
nome
email
senha
data_cadastro
1:1

Um usuário tem um perfil

PERFIS
id (PK)
usuario_id (FK)
telefone
endereco
data_nascimento

📝 Tarefas de Análise:

  1. Identifique as entidades principais: USUARIOS e PERFIS
  2. Determine as chaves primárias: id em ambas as tabelas
  3. Identifique as chaves estrangeiras: usuario_id em PERFIS
  4. Analise o tipo de relacionamento: 1:1 (um usuário tem um perfil)
  5. Crie as tabelas no Supabase seguindo esta estrutura
  6. Insira dados de teste para validar o relacionamento

💻 Implementação no Supabase:

Use este DER para criar as tabelas no Supabase. Crie primeiro a tabela USUARIOS, depois PERFIS com a chave estrangeira.

📚 Exercício 2: Biblioteca

🎯 Objetivo:

Analisar um sistema de biblioteca com livros, autores e empréstimos.

📋 DER - Diagrama Entidade-Relacionamento:

AUTORES
id (PK)
nome
nacionalidade
data_nascimento
LIVROS
id (PK)
titulo
autor_id (FK)
isbn
ano_publicacao
EMPRESTIMOS
id (PK)
livro_id (FK)
usuario_nome
data_emprestimo
data_devolucao
1:N (AUTORES → LIVROS)
1:N (LIVROS → EMPRESTIMOS)

Um autor pode ter vários livros, um livro pode ter vários empréstimos

📝 Tarefas de Análise:

  1. Identifique as entidades principais: AUTORES, LIVROS, EMPRESTIMOS
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: autor_id em LIVROS, livro_id em EMPRESTIMOS
  4. Analise os tipos de relacionamentos: 1:N entre AUTORES-LIVROS e LIVROS-EMPRESTIMOS
  5. Crie as tabelas no Supabase na ordem correta (AUTORES → LIVROS → EMPRESTIMOS)
  6. Teste com dados de exemplo para validar os relacionamentos

💻 Implementação no Supabase:

Crie as tabelas respeitando a ordem das dependências. Use REFERENCES para criar as chaves estrangeiras.

🐶 Exercício 3: Pet Shop

🎯 Objetivo:

Analisar um sistema de pet shop com clientes, pets e serviços.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES
id (PK)
nome
telefone
endereco
email
PETS
id (PK)
nome
especie
raca
cliente_id (FK)
SERVICOS
id (PK)
pet_id (FK)
tipo_servico
data_servico
valor
1:N (CLIENTES → PETS)
1:N (PETS → SERVICOS)

Um cliente pode ter vários pets, um pet pode ter vários serviços

📝 Tarefas de Análise:

  1. Identifique as entidades principais: CLIENTES, PETS, SERVICOS
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: cliente_id em PETS, pet_id em SERVICOS
  4. Analise os tipos de relacionamentos: 1:N entre CLIENTES-PETS e PETS-SERVICOS
  5. Crie as tabelas no Supabase seguindo a hierarquia de dependências
  6. Insira dados de teste para um cliente com múltiplos pets e serviços

💻 Implementação no Supabase:

Observe a cadeia de relacionamentos: CLIENTES → PETS → SERVICOS. Cada nível depende do anterior.

🍽️ Exercício 4: Restaurante

🎯 Objetivo:

Analisar um sistema de restaurante com mesas, pedidos e itens (relacionamento N:N).

📋 DER - Diagrama Entidade-Relacionamento:

MESAS
id (PK)
numero
capacidade
status
PEDIDOS
id (PK)
mesa_id (FK)
data_pedido
total
PRATOS
id (PK)
nome
preco
categoria
ITENS_PEDIDO
pedido_id (FK)
prato_id (FK)
quantidade
preco_unitario
1:N (MESAS → PEDIDOS)
N:N (PEDIDOS ↔ PRATOS via ITENS_PEDIDO)

Uma mesa pode ter vários pedidos, um pedido pode ter vários pratos

📝 Tarefas de Análise:

  1. Identifique as entidades principais: MESAS, PEDIDOS, PRATOS, ITENS_PEDIDO
  2. Determine as chaves primárias: id nas tabelas principais
  3. Identifique as chaves estrangeiras: mesa_id em PEDIDOS, pedido_id e prato_id em ITENS_PEDIDO
  4. Analise os tipos de relacionamentos: 1:N e N:N com tabela associativa
  5. Entenda por que ITENS_PEDIDO é necessária (tabela de junção)
  6. Crie as tabelas no Supabase e teste o relacionamento N:N

💻 Implementação no Supabase:

A tabela ITENS_PEDIDO resolve o relacionamento N:N entre PEDIDOS e PRATOS. Crie primeiro MESAS e PRATOS, depois PEDIDOS e por último ITENS_PEDIDO.

💪 Exercício 5: Academia

🎯 Objetivo:

Analisar um sistema de academia com alunos, instrutores e treinos.

📋 DER - Diagrama Entidade-Relacionamento:

ALUNOS
id (PK)
nome
cpf
data_nascimento
plano
INSTRUTORES
id (PK)
nome
especialidade
cref
salario
TREINOS
id (PK)
aluno_id (FK)
instrutor_id (FK)
data_treino
observacoes
1:N (ALUNOS → TREINOS)
1:N (INSTRUTORES → TREINOS)

Um aluno pode ter vários treinos, um instrutor pode orientar vários treinos

📝 Tarefas de Análise:

  1. Identifique as entidades principais: ALUNOS, INSTRUTORES, TREINOS
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: aluno_id e instrutor_id em TREINOS
  4. Analise os tipos de relacionamentos: 1:N múltiplos convergindo em TREINOS
  5. Observe que TREINOS tem duas chaves estrangeiras
  6. Crie as tabelas no Supabase e teste com dados realistas

💻 Implementação no Supabase:

A tabela TREINOS conecta ALUNOS e INSTRUTORES. Crie primeiro ALUNOS e INSTRUTORES, depois TREINOS.

📖 Exercício 6: Livraria

🎯 Objetivo:

Analisar um sistema de livraria com editoras, categorias e livros.

📋 DER - Diagrama Entidade-Relacionamento:

EDITORAS
id (PK)
nome
cidade
telefone
CATEGORIAS
id (PK)
nome
descricao
LIVROS_VENDA
id (PK)
titulo
editora_id (FK)
categoria_id (FK)
preco
estoque
1:N (EDITORAS → LIVROS_VENDA)
1:N (CATEGORIAS → LIVROS_VENDA)

Uma editora pode publicar vários livros, uma categoria pode ter vários livros

📝 Tarefas de Análise:

  1. Identifique as entidades principais: EDITORAS, CATEGORIAS, LIVROS_VENDA
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: editora_id e categoria_id em LIVROS_VENDA
  4. Analise que LIVROS_VENDA depende de duas outras tabelas
  5. Crie as tabelas independentes primeiro (EDITORAS e CATEGORIAS)
  6. Depois crie LIVROS_VENDA com as duas chaves estrangeiras

💻 Implementação no Supabase:

EDITORAS e CATEGORIAS são independentes. LIVROS_VENDA depende de ambas.

🏥 Exercício 7: Hospital

🎯 Objetivo:

Analisar um sistema hospitalar com médicos, pacientes e consultas.

📋 DER - Diagrama Entidade-Relacionamento:

MEDICOS
id (PK)
nome
crm
especialidade
telefone
PACIENTES
id (PK)
nome
cpf
data_nascimento
telefone
CONSULTAS
id (PK)
medico_id (FK)
paciente_id (FK)
data_consulta
diagnostico
1:N (MEDICOS → CONSULTAS)
1:N (PACIENTES → CONSULTAS)

Um médico pode ter várias consultas, um paciente pode ter várias consultas

📝 Tarefas de Análise:

  1. Identifique as entidades principais: MEDICOS, PACIENTES, CONSULTAS
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: medico_id e paciente_id em CONSULTAS
  4. Analise que CONSULTAS conecta MEDICOS e PACIENTES
  5. Observe que um médico pode atender vários pacientes
  6. Crie as tabelas e teste agendamentos de consultas

💻 Implementação no Supabase:

MEDICOS e PACIENTES são independentes. CONSULTAS conecta ambos.

💊 Exercício 8: Farmácia

🎯 Objetivo:

Analisar um sistema de farmácia com medicamentos, clientes e vendas.

📋 DER - Diagrama Entidade-Relacionamento:

MEDICAMENTOS
id (PK)
nome
principio_ativo
preco
estoque
CLIENTES
id (PK)
nome
cpf
telefone
VENDAS
id (PK)
cliente_id (FK)
data_venda
total
ITENS_VENDA
id (PK)
venda_id (FK)
medicamento_id (FK)
quantidade
preco_unitario
1:N (CLIENTES → VENDAS)
1:N (VENDAS → ITENS_VENDA)
1:N (MEDICAMENTOS → ITENS_VENDA)

Sistema completo de vendas com relacionamento N:N entre vendas e medicamentos

📝 Tarefas de Análise:

  1. Identifique as entidades principais: MEDICAMENTOS, CLIENTES, VENDAS, ITENS_VENDA
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: cliente_id em VENDAS, venda_id e medicamento_id em ITENS_VENDA
  4. Analise o relacionamento N:N entre VENDAS e MEDICAMENTOS via ITENS_VENDA
  5. Entenda por que ITENS_VENDA é necessária
  6. Crie as tabelas e simule uma venda com múltiplos medicamentos

💻 Implementação no Supabase:

Sistema similar ao restaurante, mas para vendas de medicamentos. ITENS_VENDA resolve o N:N.

🔧 Exercício 9: Oficina Mecânica

🎯 Objetivo:

Analisar um sistema de oficina mecânica com clientes, veículos e ordens de serviço.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_OFICINA
id (PK)
nome
telefone
endereco
VEICULOS
id (PK)
placa
modelo
ano
cliente_id (FK)
SERVICOS_OFICINA
id (PK)
descricao
preco
tempo_estimado
ORDENS_SERVICO
id (PK)
veiculo_id (FK)
data_entrada
data_saida
total
ITENS_ORDEM
id (PK)
ordem_id (FK)
servico_id (FK)
quantidade
1:N (CLIENTES_OFICINA → VEICULOS)
1:N (VEICULOS → ORDENS_SERVICO)
N:N (ORDENS_SERVICO ↔ SERVICOS_OFICINA via ITENS_ORDEM)

Sistema completo de oficina com múltiplos relacionamentos

📝 Tarefas de Análise:

  1. Identifique todas as entidades: CLIENTES_OFICINA, VEICULOS, SERVICOS_OFICINA, ORDENS_SERVICO, ITENS_ORDEM
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique todas as chaves estrangeiras
  4. Analise a cadeia de relacionamentos: CLIENTES → VEICULOS → ORDENS → ITENS
  5. Entenda o relacionamento N:N entre ordens e serviços
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema complexo com 5 tabelas. Ordem de criação: CLIENTES_OFICINA e SERVICOS_OFICINA → VEICULOS → ORDENS_SERVICO → ITENS_ORDEM.

🛒 Exercício 10: E-commerce

🎯 Objetivo:

Analisar um sistema de e-commerce com clientes, produtos e pedidos.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_ECOMMERCE
id (PK)
nome
email
telefone
endereco
PRODUTOS
id (PK)
nome
preco
estoque
categoria
PEDIDOS
id (PK)
cliente_id (FK)
data_pedido
total
status
ITENS_PEDIDO
id (PK)
pedido_id (FK)
produto_id (FK)
quantidade
preco_unitario
1:N (CLIENTES_ECOMMERCE → PEDIDOS)
N:N (PEDIDOS ↔ PRODUTOS via ITENS_PEDIDO)

Sistema clássico de e-commerce com carrinho de compras

📝 Tarefas de Análise:

  1. Identifique as entidades principais: CLIENTES_ECOMMERCE, PRODUTOS, PEDIDOS, ITENS_PEDIDO
  2. Determine as chaves primárias: id em todas as tabelas
  3. Identifique as chaves estrangeiras: cliente_id em PEDIDOS, pedido_id e produto_id em ITENS_PEDIDO
  4. Analise como um pedido pode ter múltiplos produtos
  5. Entenda por que o preço é armazenado em ITENS_PEDIDO
  6. Crie as tabelas e simule um pedido com múltiplos produtos

💻 Implementação no Supabase:

Sistema fundamental de e-commerce. ITENS_PEDIDO permite múltiplos produtos por pedido.

🏫 Exercício 11: Escola

🎯 Objetivo:

Analisar um sistema escolar com alunos, professores, disciplinas e notas.

📋 DER - Diagrama Entidade-Relacionamento:

ALUNOS
id (PK)
nome
matricula
data_nascimento
turma
PROFESSORES
id (PK)
nome
cpf
especialidade
salario
DISCIPLINAS
id (PK)
nome
carga_horaria
professor_id (FK)
NOTAS
id (PK)
aluno_id (FK)
disciplina_id (FK)
nota
bimestre
1:N (PROFESSORES → DISCIPLINAS)
N:N (ALUNOS ↔ DISCIPLINAS via NOTAS)

Sistema educacional com controle de notas por disciplina

📝 Tarefas de Análise:

  1. Identifique as entidades: ALUNOS, PROFESSORES, DISCIPLINAS, NOTAS
  2. Analise como um professor pode lecionar várias disciplinas
  3. Entenda como um aluno pode ter notas em várias disciplinas
  4. Observe que NOTAS resolve o relacionamento N:N
  5. Identifique as chaves estrangeiras em DISCIPLINAS e NOTAS
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema escolar clássico. Crie primeiro ALUNOS e PROFESSORES, depois DISCIPLINAS e por último NOTAS.

🏨 Exercício 12: Hotel

🎯 Objetivo:

Analisar um sistema hoteleiro com quartos, hóspedes e reservas.

📋 DER - Diagrama Entidade-Relacionamento:

HOSPEDES
id (PK)
nome
cpf
telefone
email
QUARTOS
id (PK)
numero
tipo
preco_diaria
status
RESERVAS
id (PK)
hospede_id (FK)
quarto_id (FK)
data_checkin
data_checkout
valor_total
1:N (HOSPEDES → RESERVAS)
1:N (QUARTOS → RESERVAS)

Sistema hoteleiro com controle de ocupação

📝 Tarefas de Análise:

  1. Identifique as entidades: HOSPEDES, QUARTOS, RESERVAS
  2. Analise como um hóspede pode fazer várias reservas
  3. Entenda como um quarto pode ter várias reservas (em períodos diferentes)
  4. Observe as chaves estrangeiras em RESERVAS
  5. Analise como controlar a disponibilidade dos quartos
  6. Crie as tabelas e simule reservas

💻 Implementação no Supabase:

Sistema hoteleiro básico. RESERVAS conecta hóspedes e quartos com controle temporal.

🎬 Exercício 13: Cinema

🎯 Objetivo:

Analisar um sistema de cinema com filmes, sessões e ingressos.

📋 DER - Diagrama Entidade-Relacionamento:

FILMES
id (PK)
titulo
genero
duracao
classificacao
SALAS
id (PK)
numero
capacidade
tipo
SESSOES
id (PK)
filme_id (FK)
sala_id (FK)
data_hora
preco
INGRESSOS
id (PK)
sessao_id (FK)
assento
cliente_nome
vendido
1:N (FILMES → SESSOES)
1:N (SALAS → SESSOES)
1:N (SESSOES → INGRESSOS)

Sistema de cinema com controle de sessões e assentos

📝 Tarefas de Análise:

  1. Identifique as entidades: FILMES, SALAS, SESSOES, INGRESSOS
  2. Analise como um filme pode ter várias sessões
  3. Entenda como uma sala pode exibir diferentes filmes
  4. Observe como SESSOES conecta filmes e salas
  5. Analise o controle de assentos através de INGRESSOS
  6. Crie as tabelas respeitando a hierarquia

💻 Implementação no Supabase:

Sistema de cinema com 4 níveis. Ordem: FILMES e SALAS → SESSOES → INGRESSOS.

🚗 Exercício 14: Locadora

🎯 Objetivo:

Analisar um sistema de locação com veículos, clientes e locações.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_LOCADORA
id (PK)
nome
cnh
telefone
endereco
VEICULOS_LOCADORA
id (PK)
placa
modelo
ano
preco_diaria
disponivel
LOCACOES
id (PK)
cliente_id (FK)
veiculo_id (FK)
data_retirada
data_devolucao
valor_total
1:N (CLIENTES_LOCADORA → LOCACOES)
1:N (VEICULOS_LOCADORA → LOCACOES)

Sistema de locação com controle de disponibilidade

📝 Tarefas de Análise:

  1. Identifique as entidades: CLIENTES_LOCADORA, VEICULOS_LOCADORA, LOCACOES
  2. Analise como um cliente pode fazer várias locações
  3. Entenda como um veículo pode ser locado várias vezes
  4. Observe o controle de disponibilidade dos veículos
  5. Analise as chaves estrangeiras em LOCACOES
  6. Crie as tabelas e simule locações

💻 Implementação no Supabase:

Sistema de locadora clássico. LOCACOES conecta clientes e veículos com controle temporal.

🏪 Exercício 15: Supermercado

🎯 Objetivo:

Analisar um sistema de supermercado com produtos, fornecedores e vendas.

📋 DER - Diagrama Entidade-Relacionamento:

FORNECEDORES
id (PK)
nome
cnpj
telefone
endereco
PRODUTOS_SUPER
id (PK)
nome
codigo_barras
preco
estoque
fornecedor_id (FK)
VENDAS_SUPER
id (PK)
data_venda
total
forma_pagamento
ITENS_VENDA_SUPER
id (PK)
venda_id (FK)
produto_id (FK)
quantidade
preco_unitario
1:N (FORNECEDORES → PRODUTOS_SUPER)
N:N (VENDAS_SUPER ↔ PRODUTOS_SUPER via ITENS_VENDA_SUPER)

Sistema de supermercado com controle de estoque e vendas

📝 Tarefas de Análise:

  1. Identifique as entidades: FORNECEDORES, PRODUTOS_SUPER, VENDAS_SUPER, ITENS_VENDA_SUPER
  2. Analise como um fornecedor pode fornecer vários produtos
  3. Entenda como uma venda pode ter vários produtos
  4. Observe como ITENS_VENDA_SUPER resolve o N:N
  5. Analise o controle de estoque dos produtos
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema de supermercado completo. Ordem: FORNECEDORES → PRODUTOS_SUPER, VENDAS_SUPER → ITENS_VENDA_SUPER.

🎵 Exercício 16: Streaming

🎯 Objetivo:

Analisar um sistema de música com artistas, álbuns e playlists.

📋 DER - Diagrama Entidade-Relacionamento:

ARTISTAS
id (PK)
nome
genero
pais
ALBUNS
id (PK)
titulo
ano_lancamento
artista_id (FK)
MUSICAS
id (PK)
titulo
duracao
album_id (FK)
PLAYLISTS
id (PK)
nome
usuario
data_criacao
PLAYLIST_MUSICAS
id (PK)
playlist_id (FK)
musica_id (FK)
ordem
1:N (ARTISTAS → ALBUNS → MUSICAS)
N:N (PLAYLISTS ↔ MUSICAS via PLAYLIST_MUSICAS)

Sistema de streaming com hierarquia musical e playlists

📝 Tarefas de Análise:

  1. Identifique as entidades: ARTISTAS, ALBUNS, MUSICAS, PLAYLISTS, PLAYLIST_MUSICAS
  2. Analise a hierarquia: ARTISTAS → ALBUNS → MUSICAS
  3. Entenda como uma playlist pode ter várias músicas
  4. Observe como PLAYLIST_MUSICAS resolve o N:N
  5. Analise o campo "ordem" para sequência das músicas
  6. Crie as tabelas respeitando a hierarquia

💻 Implementação no Supabase:

Sistema de streaming musical. Ordem: ARTISTAS → ALBUNS → MUSICAS, PLAYLISTS → PLAYLIST_MUSICAS.

🏦 Exercício 17: Banco

🎯 Objetivo:

Analisar um sistema bancário com contas, clientes e transações.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_BANCO
id (PK)
nome
cpf
telefone
endereco
CONTAS
id (PK)
numero
tipo
saldo
cliente_id (FK)
TRANSACOES
id (PK)
conta_id (FK)
tipo
valor
data_transacao
descricao
1:N (CLIENTES_BANCO → CONTAS)
1:N (CONTAS → TRANSACOES)

Sistema bancário com controle de movimentação financeira

📝 Tarefas de Análise:

  1. Identifique as entidades: CLIENTES_BANCO, CONTAS, TRANSACOES
  2. Analise como um cliente pode ter várias contas
  3. Entenda como uma conta pode ter várias transações
  4. Observe os tipos de transação (débito, crédito)
  5. Analise o controle de saldo das contas
  6. Crie as tabelas respeitando a hierarquia

💻 Implementação no Supabase:

Sistema bancário hierárquico. Ordem: CLIENTES_BANCO → CONTAS → TRANSACOES.

📱 Exercício 18: Telecom

🎯 Objetivo:

Analisar um sistema de telecomunicações com clientes, planos e chamadas.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_TELECOM
id (PK)
nome
cpf
endereco
PLANOS
id (PK)
nome
preco
minutos
internet_gb
LINHAS
id (PK)
numero
cliente_id (FK)
plano_id (FK)
data_ativacao
CHAMADAS
id (PK)
linha_id (FK)
numero_destino
duracao
data_chamada
1:N (CLIENTES_TELECOM → LINHAS)
1:N (PLANOS → LINHAS)
1:N (LINHAS → CHAMADAS)

Sistema de telecomunicações com controle de uso

📝 Tarefas de Análise:

  1. Identifique as entidades: CLIENTES_TELECOM, PLANOS, LINHAS, CHAMADAS
  2. Analise como um cliente pode ter várias linhas
  3. Entenda como um plano pode ser usado por várias linhas
  4. Observe como LINHAS conecta clientes e planos
  5. Analise o controle de chamadas por linha
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema de telecom. Ordem: CLIENTES_TELECOM e PLANOS → LINHAS → CHAMADAS.

✈️ Exercício 19: Companhia Aérea

🎯 Objetivo:

Analisar um sistema de companhia aérea com voos, passageiros e reservas.

📋 DER - Diagrama Entidade-Relacionamento:

PASSAGEIROS
id (PK)
nome
cpf
passaporte
telefone
AERONAVES
id (PK)
modelo
capacidade
prefixo
VOOS
id (PK)
numero
origem
destino
data_hora
aeronave_id (FK)
RESERVAS_VOO
id (PK)
passageiro_id (FK)
voo_id (FK)
assento
classe
preco
1:N (AERONAVES → VOOS)
N:N (PASSAGEIROS ↔ VOOS via RESERVAS_VOO)

Sistema aéreo com controle de assentos e classes

📝 Tarefas de Análise:

  1. Identifique as entidades: PASSAGEIROS, AERONAVES, VOOS, RESERVAS_VOO
  2. Analise como uma aeronave pode fazer vários voos
  3. Entenda como um passageiro pode ter várias reservas
  4. Observe como RESERVAS_VOO resolve o N:N
  5. Analise o controle de assentos e classes
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema aéreo complexo. Ordem: PASSAGEIROS e AERONAVES → VOOS → RESERVAS_VOO.

🚚 Exercício 20: Logística

🎯 Objetivo:

Analisar um sistema de entrega com pedidos, motoristas e rotas.

📋 DER - Diagrama Entidade-Relacionamento:

MOTORISTAS
id (PK)
nome
cnh
telefone
veiculo
PEDIDOS_ENTREGA
id (PK)
codigo
endereco_origem
endereco_destino
peso
valor
ROTAS
id (PK)
motorista_id (FK)
data_rota
status
ENTREGAS
id (PK)
rota_id (FK)
pedido_id (FK)
ordem_entrega
status_entrega
1:N (MOTORISTAS → ROTAS)
N:N (ROTAS ↔ PEDIDOS_ENTREGA via ENTREGAS)

Sistema logístico com otimização de rotas

📝 Tarefas de Análise:

  1. Identifique as entidades: MOTORISTAS, PEDIDOS_ENTREGA, ROTAS, ENTREGAS
  2. Analise como um motorista pode ter várias rotas
  3. Entenda como uma rota pode ter vários pedidos
  4. Observe como ENTREGAS resolve o N:N
  5. Analise o campo "ordem_entrega" para sequência
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema logístico. Ordem: MOTORISTAS e PEDIDOS_ENTREGA → ROTAS → ENTREGAS.

🏥 Exercício 21: Sistema de Saúde

🎯 Objetivo:

Analisar um sistema de saúde com médicos, pacientes, consultas e exames.

📋 DER - Diagrama Entidade-Relacionamento:

MEDICOS
id (PK)
nome
crm
especialidade
telefone
PACIENTES
id (PK)
nome
cpf
data_nascimento
telefone
CONSULTAS
id (PK)
medico_id (FK)
paciente_id (FK)
data_consulta
diagnostico
EXAMES
id (PK)
consulta_id (FK)
tipo_exame
resultado
data_exame
N:N (MEDICOS ↔ PACIENTES via CONSULTAS)
1:N (CONSULTAS → EXAMES)

Sistema médico com controle de consultas e exames

📝 Tarefas de Análise:

  1. Identifique as entidades: MEDICOS, PACIENTES, CONSULTAS, EXAMES
  2. Analise como médicos podem atender vários pacientes
  3. Entenda como pacientes podem ter vários médicos
  4. Observe como CONSULTAS resolve o N:N
  5. Analise como uma consulta pode gerar vários exames
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema médico. Ordem: MEDICOS e PACIENTES → CONSULTAS → EXAMES.

🏠 Exercício 22: Imobiliária

🎯 Objetivo:

Analisar um sistema imobiliário com proprietários, imóveis, clientes e contratos.

📋 DER - Diagrama Entidade-Relacionamento:

PROPRIETARIOS
id (PK)
nome
cpf
telefone
email
IMOVEIS
id (PK)
proprietario_id (FK)
endereco
tipo
valor
CLIENTES
id (PK)
nome
cpf
telefone
renda
CONTRATOS
id (PK)
imovel_id (FK)
cliente_id (FK)
tipo_contrato
valor_mensal
data_inicio
1:N (PROPRIETARIOS → IMOVEIS)
N:N (IMOVEIS ↔ CLIENTES via CONTRATOS)

Sistema imobiliário com controle de locações e vendas

📝 Tarefas de Análise:

  1. Identifique as entidades: PROPRIETARIOS, IMOVEIS, CLIENTES, CONTRATOS
  2. Analise como um proprietário pode ter vários imóveis
  3. Entenda como um imóvel pode ter vários contratos
  4. Observe como CONTRATOS resolve o N:N
  5. Analise os tipos de contrato (locação/venda)
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema imobiliário. Ordem: PROPRIETARIOS e CLIENTES → IMOVEIS → CONTRATOS.

💪 Exercício 23: Academia

🎯 Objetivo:

Analisar um sistema de academia com alunos, instrutores, treinos e exercícios.

📋 DER - Diagrama Entidade-Relacionamento:

ALUNOS
id (PK)
nome
cpf
data_nascimento
plano
INSTRUTORES
id (PK)
nome
cref
especialidade
telefone
TREINOS
id (PK)
aluno_id (FK)
instrutor_id (FK)
nome_treino
data_criacao
EXERCICIOS
id (PK)
treino_id (FK)
nome_exercicio
series
repeticoes
N:N (ALUNOS ↔ INSTRUTORES via TREINOS)
1:N (TREINOS → EXERCICIOS)

Sistema de academia com controle de treinos personalizados

📝 Tarefas de Análise:

  1. Identifique as entidades: ALUNOS, INSTRUTORES, TREINOS, EXERCICIOS
  2. Analise como alunos podem ter vários instrutores
  3. Entenda como instrutores podem atender vários alunos
  4. Observe como TREINOS resolve o N:N
  5. Analise como um treino pode ter vários exercícios
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema de academia. Ordem: ALUNOS e INSTRUTORES → TREINOS → EXERCICIOS.

💊 Exercício 24: Farmácia

🎯 Objetivo:

Analisar um sistema de farmácia com medicamentos, fornecedores, vendas e receitas.

📋 DER - Diagrama Entidade-Relacionamento:

FORNECEDORES
id (PK)
nome
cnpj
telefone
endereco
MEDICAMENTOS
id (PK)
fornecedor_id (FK)
nome
principio_ativo
preco
estoque
RECEITAS
id (PK)
paciente_nome
medico_crm
data_receita
validade
VENDAS
id (PK)
medicamento_id (FK)
receita_id (FK)
quantidade
valor_total
data_venda
1:N (FORNECEDORES → MEDICAMENTOS)
N:N (MEDICAMENTOS ↔ RECEITAS via VENDAS)

Sistema farmacêutico com controle de receitas

📝 Tarefas de Análise:

  1. Identifique as entidades: FORNECEDORES, MEDICAMENTOS, RECEITAS, VENDAS
  2. Analise como um fornecedor pode ter vários medicamentos
  3. Entenda como uma receita pode ter vários medicamentos
  4. Observe como VENDAS resolve o N:N
  5. Analise o controle de estoque e validade
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema farmacêutico. Ordem: FORNECEDORES e RECEITAS → MEDICAMENTOS → VENDAS.

🚗 Exercício 25: Concessionária

🎯 Objetivo:

Analisar um sistema de concessionária com veículos, clientes, vendedores e vendas.

📋 DER - Diagrama Entidade-Relacionamento:

VEICULOS
id (PK)
marca
modelo
ano
preco
cor
CLIENTES_AUTO
id (PK)
nome
cpf
telefone
renda
VENDEDORES
id (PK)
nome
cpf
comissao
meta_mensal
VENDAS_AUTO
id (PK)
veiculo_id (FK)
cliente_id (FK)
vendedor_id (FK)
data_venda
valor_final
N:N (VEICULOS ↔ CLIENTES_AUTO via VENDAS_AUTO)
1:N (VENDEDORES → VENDAS_AUTO)

Sistema automotivo com controle de vendas e comissões

📝 Tarefas de Análise:

  1. Identifique as entidades: VEICULOS, CLIENTES_AUTO, VENDEDORES, VENDAS_AUTO
  2. Analise como um veículo pode ser vendido para um cliente
  3. Entenda como um vendedor pode fazer várias vendas
  4. Observe como VENDAS_AUTO conecta todas as entidades
  5. Analise o controle de comissões e metas
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema automotivo. Ordem: VEICULOS, CLIENTES_AUTO e VENDEDORES → VENDAS_AUTO.

📺 Exercício 26: Streaming

🎯 Objetivo:

Analisar um sistema de streaming com usuários, filmes, séries e visualizações.

📋 DER - Diagrama Entidade-Relacionamento:

USUARIOS_STREAM
id (PK)
nome
email
plano
data_cadastro
FILMES
id (PK)
titulo
genero
duracao
ano_lancamento
SERIES
id (PK)
titulo
genero
temporadas
episodios_total
VISUALIZACOES
id (PK)
usuario_id (FK)
filme_id (FK)
serie_id (FK)
data_visualizacao
tempo_assistido
N:N (USUARIOS_STREAM ↔ FILMES via VISUALIZACOES)
N:N (USUARIOS_STREAM ↔ SERIES via VISUALIZACOES)

Plataforma de streaming com controle de visualizações

📝 Tarefas de Análise:

  1. Identifique as entidades: USUARIOS_STREAM, FILMES, SERIES, VISUALIZACOES
  2. Analise como usuários podem assistir vários conteúdos
  3. Entenda como conteúdos podem ser assistidos por vários usuários
  4. Observe como VISUALIZACOES resolve múltiplos N:N
  5. Analise o controle de tempo assistido
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Plataforma streaming. Ordem: USUARIOS_STREAM, FILMES e SERIES → VISUALIZACOES.

🍕 Exercício 27: Delivery

🎯 Objetivo:

Analisar um sistema de delivery com restaurantes, pratos, clientes e pedidos.

📋 DER - Diagrama Entidade-Relacionamento:

RESTAURANTES
id (PK)
nome
endereco
telefone
categoria
PRATOS
id (PK)
restaurante_id (FK)
nome
descricao
preco
CLIENTES_DELIVERY
id (PK)
nome
telefone
endereco
email
PEDIDOS_DELIVERY
id (PK)
cliente_id (FK)
prato_id (FK)
quantidade
valor_total
data_pedido
1:N (RESTAURANTES → PRATOS)
N:N (CLIENTES_DELIVERY ↔ PRATOS via PEDIDOS_DELIVERY)

Sistema de delivery com múltiplos restaurantes

📝 Tarefas de Análise:

  1. Identifique as entidades: RESTAURANTES, PRATOS, CLIENTES_DELIVERY, PEDIDOS_DELIVERY
  2. Analise como um restaurante pode ter vários pratos
  3. Entenda como clientes podem pedir vários pratos
  4. Observe como PEDIDOS_DELIVERY resolve o N:N
  5. Analise o controle de quantidade e valor
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema delivery. Ordem: RESTAURANTES e CLIENTES_DELIVERY → PRATOS → PEDIDOS_DELIVERY.

🏦 Exercício 28: Banco

🎯 Objetivo:

Analisar um sistema bancário com clientes, contas, transações e cartões.

📋 DER - Diagrama Entidade-Relacionamento:

CLIENTES_BANCO
id (PK)
nome
cpf
telefone
endereco
CONTAS
id (PK)
cliente_id (FK)
numero_conta
tipo_conta
saldo
CARTOES
id (PK)
conta_id (FK)
numero_cartao
tipo_cartao
limite
TRANSACOES
id (PK)
conta_id (FK)
tipo_transacao
valor
data_transacao
1:N (CLIENTES_BANCO → CONTAS)
1:N (CONTAS → CARTOES e TRANSACOES)

Sistema bancário com controle financeiro completo

📝 Tarefas de Análise:

  1. Identifique as entidades: CLIENTES_BANCO, CONTAS, CARTOES, TRANSACOES
  2. Analise como um cliente pode ter várias contas
  3. Entenda como uma conta pode ter vários cartões
  4. Observe como uma conta pode ter várias transações
  5. Analise o controle de saldo e limite
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema bancário. Ordem: CLIENTES_BANCO → CONTAS → CARTOES e TRANSACOES.

🎓 Exercício 29: Universidade

🎯 Objetivo:

Analisar um sistema universitário com alunos, professores, disciplinas e matrículas.

📋 DER - Diagrama Entidade-Relacionamento:

ALUNOS_UNIV
id (PK)
nome
matricula
curso
semestre
PROFESSORES
id (PK)
nome
departamento
titulacao
salario
DISCIPLINAS
id (PK)
professor_id (FK)
nome
codigo
creditos
MATRICULAS
id (PK)
aluno_id (FK)
disciplina_id (FK)
semestre
nota_final
status
1:N (PROFESSORES → DISCIPLINAS)
N:N (ALUNOS_UNIV ↔ DISCIPLINAS via MATRICULAS)

Sistema acadêmico com controle de matrículas e notas

📝 Tarefas de Análise:

  1. Identifique as entidades: ALUNOS_UNIV, PROFESSORES, DISCIPLINAS, MATRICULAS
  2. Analise como um professor pode lecionar várias disciplinas
  3. Entenda como alunos podem se matricular em várias disciplinas
  4. Observe como MATRICULAS resolve o N:N
  5. Analise o controle de notas e status
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema acadêmico. Ordem: ALUNOS_UNIV e PROFESSORES → DISCIPLINAS → MATRICULAS.

🛒 Exercício 30: E-commerce

🎯 Objetivo:

Analisar um sistema de e-commerce com produtos, categorias, clientes e pedidos.

📋 DER - Diagrama Entidade-Relacionamento:

CATEGORIAS
id (PK)
nome
descricao
ativa
PRODUTOS_ECOM
id (PK)
categoria_id (FK)
nome
preco
estoque
CLIENTES_ECOM
id (PK)
nome
email
endereco
telefone
PEDIDOS_ECOM
id (PK)
cliente_id (FK)
produto_id (FK)
quantidade
valor_total
data_pedido
1:N (CATEGORIAS → PRODUTOS_ECOM)
N:N (CLIENTES_ECOM ↔ PRODUTOS_ECOM via PEDIDOS_ECOM)

Loja virtual com controle de estoque e vendas

📝 Tarefas de Análise:

  1. Identifique as entidades: CATEGORIAS, PRODUTOS_ECOM, CLIENTES_ECOM, PEDIDOS_ECOM
  2. Analise como uma categoria pode ter vários produtos
  3. Entenda como clientes podem fazer vários pedidos
  4. Observe como PEDIDOS_ECOM resolve o N:N
  5. Analise o controle de estoque e vendas
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Loja virtual. Ordem: CATEGORIAS e CLIENTES_ECOM → PRODUTOS_ECOM → PEDIDOS_ECOM.

🏨 Exercício 31: Hotel

🎯 Objetivo:

Analisar um sistema hoteleiro com quartos, hóspedes, reservas e serviços.

📋 DER - Diagrama Entidade-Relacionamento:

QUARTOS
id (PK)
numero
tipo
preco_diaria
capacidade
HOSPEDES
id (PK)
nome
cpf
telefone
email
SERVICOS_HOTEL
id (PK)
nome
descricao
preco
disponivel
RESERVAS
id (PK)
quarto_id (FK)
hospede_id (FK)
servico_id (FK)
data_checkin
data_checkout
valor_total
N:N (QUARTOS ↔ HOSPEDES via RESERVAS)
N:N (HOSPEDES ↔ SERVICOS_HOTEL via RESERVAS)

Sistema hoteleiro com controle de ocupação e serviços

📝 Tarefas de Análise:

  1. Identifique as entidades: QUARTOS, HOSPEDES, SERVICOS_HOTEL, RESERVAS
  2. Analise como quartos podem ser reservados por vários hóspedes
  3. Entenda como hóspedes podem usar vários serviços
  4. Observe como RESERVAS conecta todas as entidades
  5. Analise o controle de datas e valores
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema hoteleiro. Ordem: QUARTOS, HOSPEDES e SERVICOS_HOTEL → RESERVAS.

💼 Exercício 32: Consultoria

🎯 Objetivo:

Analisar um sistema de consultoria com consultores, projetos, clientes e atividades.

📋 DER - Diagrama Entidade-Relacionamento:

CONSULTORES
id (PK)
nome
especialidade
valor_hora
experiencia
CLIENTES_CONSULT
id (PK)
nome
empresa
setor
contato
PROJETOS_CONSULT
id (PK)
cliente_id (FK)
nome
descricao
valor_total
prazo
ATIVIDADES
id (PK)
projeto_id (FK)
consultor_id (FK)
descricao
horas_trabalhadas
data_atividade
1:N (CLIENTES_CONSULT → PROJETOS_CONSULT)
N:N (CONSULTORES ↔ PROJETOS_CONSULT via ATIVIDADES)

Sistema de consultoria com controle de horas e projetos

📝 Tarefas de Análise:

  1. Identifique as entidades: CONSULTORES, CLIENTES_CONSULT, PROJETOS_CONSULT, ATIVIDADES
  2. Analise como um cliente pode ter vários projetos
  3. Entenda como consultores podem trabalhar em vários projetos
  4. Observe como ATIVIDADES resolve o N:N
  5. Analise o controle de horas e valores
  6. Crie as tabelas respeitando as dependências

💻 Implementação no Supabase:

Sistema consultoria. Ordem: CONSULTORES e CLIENTES_CONSULT → PROJETOS_CONSULT → ATIVIDADES.