Normalizar tabela

21/11/2019

0

Comecei a estudar Banco de Dados a pouco tempo e estou com dúvidas em como realizar o seguinte exercício:

Normalize a seguinte tabela:
ALUNO (COD_ALUNO PK, NOM_ALUNO, COD_DISCIPLINA, NUM_SEMESTRE, VAL_NOTA_FINAL, COD_PROFESSOR, NOM_PROFESSOR)
Marco Junor

Marco Junor

Responder

Post mais votado

21/11/2019

Boa noite

Eu faria dessa forma
ALUNO (COD_ALUNO PK, NOM_ALUNO, VAL_NOTA_FINAL, NUM_SEMESTRE)
ALUNO_DISCIPLINA (COD_ALUNO, COD_DISCIPLINA)
ALUNO_PROFESSOR (COD_ALUNO, COD_PROFESSOR)
DISCIPLINA (COD_DISCIPLINA PK, COD_PROFESSOR FK)
PROFESSOR (COD_PROFESSOR PK, NOM_PROFESSOR)

As tabelas ALUNO_DISCIPLINA e ALUNO_PROFESSOR são intermediárias
ALUNO_DISCIPLINA: Um aluno possui mais de uma disciplina assim como uma disciplina possui mais de um aluno
ALUNO_PROFESSOR: Um aluno tem mais de um professor assim como um professor tem mais de um aluno

Desta forma o relacionamento ficaria N:N, por isso criaria as tabelas intermediárias.

Diferentemente da relação entre DISCIPLINA e PROFESSOR, onde um professor pode ministrar mais de uma disciplina, porém (até onde eu saiba) uma disciplina tem somente um professor (levando em conta o semestre ministrado). Essa é uma característica dos relacionamentos 1:N. Na tabela do lado “N” cria-se uma “chave estrangeira” que aponta para a chave primária da tabela “1”.

Eduardo Zanardo

Eduardo Zanardo
Responder

Mais Posts

21/11/2019

Lucas Conceição

Oi Marco, tudo joia?

Então, existem 6 técnicas para normalização de banco de dados, elas são guias para a criação de um banco de dados relacional bem estruturado, são elas FN1, FN2, FN3, FN4, FN5 e FNBC. Algumas dessas normas são interligadas, por exemplo, pra um entidade estar de acordo com a FN2, ela precisa primeiro estar de acordo com a FN1.

A sua tabela não está de acordo com varias FN, e para normaliza-la, é necessário verificar uma por uma, como você está iniciando seus estudos sobre de banco de dados, eu sugiro muito que você leia cada norma, e tente fazer este exercício, para que assim, possa fixar estes conceitos.

Sugiro a leitura deste artigo, onde é bem explicado conceitos importantes e como devem ser seguidas cada norma.
https://www.devmedia.com.br/artigo-sql-magazine-6-normalizacao-tecnicas-e-conceitos/7087

Caso tenha alguma duvida quanto a alguma norma formal em especifico, é só perguntar. Abraços e bons estudos
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar