Normalização de Banco de Dados

Description

Conceitos sobre a normalização de banco de dados. Conceitos sobre a primeira forma normal 1FN, segunda forma normal 2FN e terceira forma normal 3FN.
Domingos Bernardo
Mind Map by Domingos Bernardo, updated more than 1 year ago
Domingos Bernardo
Created by Domingos Bernardo over 7 years ago
272
5

Resource summary

Normalização de Banco de Dados
  1. O objetivo da normalização é eliminar redundâncias e inconsistências de um banco de dados com reorganização mínima dos dados.
    1. A normalização é um processo baseado nas formas normais.
      1. Formas Normais
        1. Primeira Forma Normal - 1FN
          1. Na Primeira Forma Normal 1FN os campos devem ser atômicos (simples) ou indivisíveis e não podem serem multivalorados ou compostos.
            1. Identificar a chave primária da entidade;
              1. Identificar o grupo repetitivo e removê-lo da entidade
                1. Criar uma nova entidade com o grupo repetitivo.
                2. Exemplo
                  1. prontuário: é a chave e não pode ser dividido.
                    1. nome: pode ser dividido em "nome" e "sobrenome" mas para este problema não seria relevante;
                      1. endereço: pode ser dividido em: "rua", "número", "cidade", "estado", "cep";
                        1. disciplinas: pode ser dividida em: "nome", "horário", "sala", "carga horária"
                          1. curso: pode ser dividido em: "nome", "descrição", "perfil do egresso", "carga horária"
                            1. Correção
                              1. ALUNO {prontuário, nome, cod_disciplina, cod_curso}
                                1. ENDEREÇO {cod_endereço, rua, numero, cidade, estado, cep, prontuário}
                                  1. DISCIPLINA {cod_disciplina, nome, horario, sala, carga_horaria}
                                    1. CURSO {cod_curso, nome, descrição, perfil_egresso, carga_horária}
                                2. Segunda Forma Normal - 2FN
                                  1. Uma tabela encontra-se na Segunda Forma Normal (2FN) se estiver em conformidade com a 1FN e todo atributo do complemento de uma chave candidata é totalmente funcionalmente dependente daquela chave, ou seja, todos os atributos não chave devem ser totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela).
                                    1. Exemplo
                                      1. NOTA {cod_nota, cod_disciplina, cod_aluno, valor_nota, nome_aluno, nome_disciplina}
                                        1. identificar atributo não chaves: valor_nota, nome_aluno e nome_disciplina.
                                          1. analisar para cada atributo não chave sua dependência das chaves:
                                            1. atributo "valor_nota": está correto pois é o valor do cod_nota, que é de uma disciplina (cod_disciplina) e de um aluno (cod_aluno).
                                              1. atributo "nome_aluno": está incorreto pois ele é desnecessário nesta tabela tendo em vista que dado uma nota (cod_nota) eu consigo descobrir qual é o nome do aluno dela (cod_aluno).
                                                1. atributo "nome_disciplina": está incorreto pois ele é desnecessário nesta tabela tendo em vista que dado uma nota (cod_nota) eu consigo descobrir qual é o nome da disciplina dela (cod_disciplina)
                                                2. Correção
                                                  1. ALUNO {cod_aluno, nome}
                                                    1. DISCIPLINA {cod_disciplina, nome}
                                                      1. NOTA { cod_nota, cod_disciplina, cod_aluno, valor_nota}
                                                  2. Terceira Forma Normal - 3FN
                                                    1. Uma tabela está na Terceira Forma Normal 3FN se estiver em conformidade com a 1FN, 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave. Na terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela.
                                                      1. Exemplo
                                                        1. NOTA {cod_nota, cod_disciplina, cod_aluno, nota1, nota2, nota3, nota4, media_notas}
                                                          1. Correção
                                                            1. os atributos que não são chaves são: "nota1", "nota2", "nota3", "nota4" e "media_notas"
                                                              1. "nota1", "nota2", "nota3" e "nota4": são atributos de um aluno em uma determinada disciplina, portanto estão corretos.
                                                                1. o atributo "media_notas" é um atributo transitivo, ou seja, para ele existir ele depende diretamente da existência de "nota1", "nota2", "nota3" e "nota4" e não do aluno e não da disciplina.
                                                                  1. NOTA {cod_nota, cod_disciplina, cod_aluno, nota1, nota2, nota3, nota4}
                                                            2. Conceitos
                                                              1. Uma forma normal é uma regra de deve ser aplicada na construção das tabelas do banco de dados para que estas fiquem bem estruturadas.
                                                                1. Esta estruturação consiste em: reduzir ao mínimo a redundância e, como consequência, permitir aos usuários inserir, modificar e apagar linhas (registros) em tabelas, sem erros ou inconsistências.
                                                            Show full summary Hide full summary

                                                            Similar

                                                            Introdução a Banco de Dados
                                                            Danilo Barbosa
                                                            Banco de Dados
                                                            talyson.milan
                                                            Perguntas e Respostas - Banco de Dados
                                                            Janaina Freitas
                                                            Banco de dados e SGBD
                                                            bruno de assis
                                                            NORMALIZAÇÃO BANCO DE DADOS
                                                            Cristiano Gonçalves
                                                            Banco de dados III - Modelos de Dados II
                                                            Bianca Kaiser
                                                            Introdução a Banco de dados
                                                            Ícaro Matheus
                                                            Tipos de relacionamento
                                                            Philip Rodrigues
                                                            Apresentação sobre Banco de Dados
                                                            Suéllen Martinelli
                                                            Dragon Ball do início ao fim 03/2017
                                                            Vini Catoo
                                                            Níveis de Abstração
                                                            Rodrigo Ferreira