Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DS52F
Prof. Diego Stiehl
1
12/05/2011
Normalização
Tem por objetivo
Evitar problemas que podem provocar falhas no projeto
do banco de dados
Eliminar a mistura de assuntos
Eliminar redundâncias desnecessárias em dados
Visa gerenciar
Problemas de performance
Problemas de manutenção
Problemas de integridade
Normalização
O processo de normalização
Aplica uma série de regras sobre as tabelas de um banco
de dados
Verificar se estão corretamente projetadas
É feita através das formas normais
Regras de normalização
Existem cinco formas normais
Mas somente três são efetivamente utilizadas
2
12/05/2011
Normalização
“Consiste em definir o formato lógico adequado para
as estruturas de dados das tabelas de um banco de
dados relacional, identificando-as no projeto lógico
do sistema, com o objetivo de minimizar o espaço
utilizado pelos dados e garantir a integridade e
confiabilidade das informações.”
MACHADO (2004)
Após a Normalização
Algumas tabelas acabam sendo divididas em duas ou
mais tabelas
Há a simplificação dos atributos
Antes da normalização
Em um banco de dados totalmente não normalizado,
encontraremos apenas uma tabela, a qual conterá todas
as informações de forma agrupada.
3
12/05/2011
...
4
12/05/2011
Problemas na Tabela
Para uma busca do tipo:
Quais os clientes que compraram pregos no último mês
Precisa-se fazer uma pesquisa em toda a tabela,
comparando linha a linha a coluna da descrição do
produto
Todos os dados de cada linha serão carregados na
memória
Problemas na Tabela
Se alguém desejar alterar a cidade do cliente:
Precisa-se procurar linha a linha novamente, buscando
pelo código do cliente desejado
O mesmo cliente existirá em diversas linhas
Há a necessidade de alterações na coluna da cidade em
diversas linhas
5
12/05/2011
Problemas na Tabela
Se houver a necessidade de excluir uma nota fiscal de
um cliente, sendo esta a única que ele possuía
Haverá perda total dos dados cadastrais do cliente em
questão, visto que tudo estará sendo tratado na mesma
linha da tabela (a linha que será deletada)
6
12/05/2011
7
12/05/2011
Aplicação
Aplicar a primeira forma normal
Precisa-se retirar os elementos repetitivos da estrutura
Estes elementos devem compor outra estrutura do tipo
“vetor”
Há a necessidade da definição de chaves para as tabelas
Elas que permitirão o relacionamento entre as estruturas
obtidas no processo
8
12/05/2011
Aplicação
Livro {Nome do Livro, ISBN}
Empréstimo {ISBN, Nome do Aluno, Data}
Livro ISBN
Java para WEB 123456789-0
Banco de Dados 987654321-1
9
12/05/2011
Resolução
Retirando as estruturas repetitivas
Nota Fiscal {Número da NF, Código do Cliente, Nome do Cliente,
Cidade do Cliente, Telefone do Cliente, Data de Emissão, Total
Geral da Nota}
Item da Nota Fiscal {Código do Produto, Descrição do Produto,
Quantidade, Valor unitário, Valor total do Produto}
Definindo chaves
Nota Fiscal {Número da NF, Código do Cliente, Nome do Cliente,
Cidade do Cliente, Telefone do Cliente, Data de Emissão, Total
Geral da Nota}
Item da Nota Fiscal {Número da NF, Código do Produto,
Descrição do Produto, Quantidade, Valor unitário, Valor total do
Produto}
NF Cód. Cliente Nome Cliente Cid. Cliente Fone Cliente Data Emissão Total Geral Nota
100 1José Toledo 1234-4321 01/03/2011 2,80
102 2Pedro Cascavel 0987-7890 02/03/2011 0,15
103 3Marta Matelândia 1111-2222 03/03/2011 5,00
104 4 Osvaldo Missal 2222-1111 04/03/2011 14,99
105 5Durval MCR 5555-6666 05/03/2011 0,66
106 1José Toledo 1234-4321 06/03/2011 29,98
107 6Osório Medianeira 9999-0000 07/03/2011 10,50
108 6Osório Medianeira 9999-0000 08/03/2011 15,00
109 6Osório Medianeira 9999-0000 09/03/2011 74,95
110 2Pedro Cascavel 0987-7890 10/03/2011 5,00
NF Cód. Produto Desc. Produto Quantidade Val. Unitário Val. Total Produto
100 1000Parafuso 10 0,03 0,30
100 2000Prego 50 0,05 2,50
102 1000Parafuso 5 0,03 0,15
103 2000Prego 100 0,05 5,00
104 3000Martelo 1 14,99 14,99
105 1000Parafuso 22 0,03 0,66
106 3000Martelo 2 14,99 29,98
107 1000Parafuso 350 0,03 10,50
108 1000Parafuso 500 0,03 15,00
109 3000Martelo 5 14,99 74,95
110 2000Prego 100 0,05 5,00
10
12/05/2011
Resultado
Houve o desdobramento em duas estruturas
Tabela de Notas Fiscais
Dados que compõem a estrutura original, exceto os elementos
repetitivos
Foi definida sua chave (Número da NF)
Tabela de Item de Nota Fiscal
Dados que compõem os elementos repetitivos da estrutura
original, tendo como chave o campo-chave da estrutura
primeira tabela em conjunto com uma chave própria que
represente a estrutura de repetição (Código do Produto)
Exercício em Sala
Ficha de cadastro de palestras
Moodle
11