normalização de dados prof. christiano lima santos
TRANSCRIPT
![Page 1: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/1.jpg)
Normalização de DadosProf. Christiano Lima Santos
![Page 2: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/2.jpg)
Sumário
O que é?Por quê?BenefíciosFormas NormaisExercícios
![Page 3: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/3.jpg)
O que é?
Conjunto de passos em um projeto de banco de dados visando o armazenamento consistente e acesso eficiente aos dados;
Tais passos reduzem a redundância dos dados e as chances dos dados se tornarem inconsistentes.
![Page 4: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/4.jpg)
Por quê?
Um banco de dados não-normalizado pode apresentar:Redundância;Dependência incorreta entre os dados;Maior complexidade nas consultas SQL.
![Page 5: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/5.jpg)
Benefícios
Elimina a necessidade de redundância dos dados;
Reduz os riscos de inconsistência; Evita anomalias de atualização; Facilita a manipulação dos dados por meio
de uma linguagem de consulta (SQL);
![Page 6: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/6.jpg)
Conceitos
Atributo principal: é um atributo da relação R que é membro de alguma chave candidata de R.
![Page 7: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/7.jpg)
Formas Normais
Uma tabela num banco de dados relacional está numa certa forma normal se satisfaz as condições impostas pela mesma;
Edgar F. Codd definiu originalmente três formas normais, mas existem hoje outras formas normais geralmente aceitas.
![Page 8: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/8.jpg)
Formas Normais Formas normais mais comuns:
Primeira Forma Normal (ou 1FN); Segunda Forma Normal (ou 2FN); Terceira Forma Normal (ou 3FN); Forma Normal de Boyce-Codd (ou FNBC); Quarta Forma Normal (ou 4FN); Quinta Forma Normal (ou 5FN); Forma Normal Chave-Domínio (FNCD).
Para efeitos práticos, considera-se que a base de dados está normalizada se aderir à terceira forma normal.
![Page 9: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/9.jpg)
Primeira Forma Normal (1FN)
Uma relação está na 1FN quando (três possíveis definições): Todos os atributos baseiam-se em um domínio
simples, não contendo grupos ou valores repetidos; Não possui atributos multivalorados ou compostos; Todos os seus atributos são atômicos.
Ela reprova “relações dentro de relações”.
![Page 10: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/10.jpg)
Primeira Forma Normal (1FN)
Tabela Não-1FN
![Page 11: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/11.jpg)
Primeira Forma Normal (1FN)
Tabela Não-1FN Tabela 1FN
![Page 12: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/12.jpg)
Primeira Forma Normal (1FN)
Tabela Não-1FN
VendaID ProdutoID___Nome___PrecoUnitario___Qtd
Total
1 1, Sabão em pó, 2.50, 32, Camisa, 1.00, 5
12.50
2 1, Sabão em pó, 2.50, 14, Balde, 6.00, 2
14.50
3 5, Feijão (1kg), 10.00, 1 10.00
![Page 13: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/13.jpg)
Primeira Forma Normal (1FN)
Tabela 1FNVendaI
DProdutoID ProdutoNo
mePrecoUnitari
oQtd Subtotal
1 1 Sabão em pó 2.50 3 7.50
1 2 Camisa 1.00 5 5.00
2 1 Sabão em pó 2.50 1 2.50
2 4 Balde 6.00 2 12.00
3 5 Feijão (1kg) 10.00 1 10.00
![Page 14: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/14.jpg)
Primeira Forma Normal (1FN)
ProblemasRedundância;Anomalias de atualização.
![Page 15: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/15.jpg)
Segunda Forma Normal (2FN)
Uma relação está na 2FN se: Estiver na 1FN; Cada atributo não principal for dependente da
chave primária inteira.
Se a tabela possui chave primária composta, se um atributo depende apenas de uma parte da chave primária, ele deve ser colocado em outra tabela.
![Page 16: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/16.jpg)
Segunda Forma Normal (2FN)
Tabela Não-2FNVendaI
DProdutoID ProdutoNo
mePrecoUnitari
oQtd Subtotal
1 1 Sabão em pó 2.50 3 7.50
1 2 Camisa 1.00 5 5.00
2 1 Sabão em pó 2.50 1 2.50
2 4 Balde 6.00 2 12.00
3 5 Feijão (1kg) 10.00 1 10.00
![Page 17: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/17.jpg)
Segunda Forma Normal (2FN)
Tabela 2FNVenda
IDProdutoI
DQtd PrecoUnitar
ioSubtot
al
1 1 3 2.50 7.50
1 2 5 1.00 5.00
2 1 1 2.50 2.50
2 4 2 6.00 12.00
3 5 1 10.00 10.00
ProdutoID ProdutoNome
1 Sabão em pó
2 Camisa
1 Sabão em pó
4 Balde
5 Feijão (1kg)
![Page 18: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/18.jpg)
Terceira Forma Normal (3FN)
Uma relação R está na 3FN se: Estiver na 2FN; Cada atributo não principal de R não possui
dependência transitiva da chave primária.
![Page 19: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/19.jpg)
Terceira Forma Normal (3FN)
Tabela Não-3FNVenda
IDProdutoI
DQtd PrecoUnitar
ioSubtot
al
1 1 3 2.50 7.50
1 2 5 1.00 5.00
2 1 1 2.50 2.50
2 4 2 6.00 12.00
3 5 1 10.00 10.00
![Page 20: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/20.jpg)
Terceira Forma Normal (3FN)
Tabela 3FNVenda
IDProdutoI
DQtd PrecoUnitar
io
1 1 3 2.50
1 2 5 1.00
2 1 1 2.50
2 4 2 6.00
3 5 1 10.00
![Page 21: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/21.jpg)
Resumo das Três Primeiras FNForma Normal
Teste Solução (normalização)
Primeira (1FN)
Relação não deve ter atributos multivalorados ou relações aninhadas.
Formar novas relações para cada atributo multivalorado ou relação aninhada.
Segunda (2FN)
Para relações em que a chave primária contém múltiplos atributos, nenhum atributo não chave deverá ser funcionalmente dependente de uma parte da chave primária.
Decompor e montar uma nova relação para cada chave parcial com seu(s) atributo(s) dependente(s). Certificar-se de manter uma relação com a chave primária original e quaisquer atributos que sejam total e funcionalmente dependentes dela.
Terceira (3FN)
A relação não deve ter um atributo não chave determinado funcionalmente por outro atributo não chave (ou por um conjunto de atributos não chave). Ou seja, não deve haver dependência transitiva de um atributo não chave sobre a chave primária.
Decompor e montar uma relação que inclua o(s) atributo(s) não chave que determina(m) funcionalmente outro(s) atributo(s) não chave.
![Page 22: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/22.jpg)
Forma Normal de Boyce-Codd (FNBC)
Uma relação R está na FNBC se:Estiver na 3FN;Toda vez que uma dependência funcional
não trivial X A se mantiver em R, então X é uma superchave de R.
![Page 23: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/23.jpg)
Forma Normal de Boyce-Codd (FNBC)
Considere uma relação LOTES com as seguintes dependências: DF1: PropriedadeID {Cidade, Lote, Area}
DF2: {Cidade, Lote} {PropriedadeID, Area}
DF3: Area Cidade
Tal relação satisfaz 3FN, mas não é FNBC.
PropriedadeID
Cidade Lote Area
![Page 24: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/24.jpg)
Forma Normal de Boyce-Codd (FNBC)
Relação após normalização (segundo FNBC):
O que aconteceu com as dependências DF1, DF2 e DF3?
PropriedadeID
Area Lote Area Cidade
![Page 25: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/25.jpg)
Perguntas de Revisão
A que se refere o termo relação não-normalizada?
Defina cada forma normal aqui estudada; Como a Forma Normal de Boyce-Codd difere
da 3FN? Por que ela é considerada uma forma mais forte de 3FN?
![Page 26: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/26.jpg)
Exercícios
Dada a relação SERVIDOR:
Quais formas normais ela satisfaz? Por quê? Que alterações são necessárias para que ela satisfaça as demais?
Nome CPF Dependentes Telefones EndereçoRua__Numero__Bairro
Anderson 001.001.001-01
{Adriana, Antonio}
{2222-2222} Gentil Tavares, 27, Inacio
Bruno 002.002.002-02
{Bianca} {3333-3333} Getulio Vargas, 12, Siqueira
![Page 27: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/27.jpg)
Exercícios
Dada a relação MANUTENCAO:
Em que forma normal ela se encontra? Como alterá-la para satisfazer as demais?
ManutencaoID
Dia Bairro Rua
1 01/01/2014 Vila Velha Pereira Lobo
2 02/02/2014 Vila Nova José Machado
3 03/03/2014 Vila Mais Nova Ainda Guimarães Rosa
4 04/04/2014 Vila Qualquer Zaqueu Brandão
![Page 28: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/28.jpg)
Exercícios
Dada a relação CONTROLE_BIBLIOTECA:
Em que forma normal ela se encontra? Como alterá-la para satisfazer as demais?
EmprestimoID
Livro Autores Aluno Matricula DataPedido
DataDevolucao
![Page 29: Normalização de Dados Prof. Christiano Lima Santos](https://reader035.vdocuments.site/reader035/viewer/2022062512/552fc160497959413d8e9127/html5/thumbnails/29.jpg)
Bibliografia Recomendada
ELMASRI, Ramez; NAVATHE, Shamkant. Sistemas de Banco de Dados. 6ª ed. São Paulo : Pearson Addison-Wesley, 2011.