aula 5 normalização dos dados

18
Normalização dos dados Base de Dados 1

Upload: helio-martins

Post on 27-Jun-2015

472 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aula 5   normalização dos dados

Normalização dos dados

Base de Dados 1

Page 2: Aula 5   normalização dos dados

Anomalias Conceito de Normalização Dependências Funcional 1ª Forma Normal 2ª Forma Normal 3ª Forma Normal Regras Práticas

Agenda

Page 3: Aula 5   normalização dos dados

Processo formal que consiste em substituir um

conjunto de entidades por outro conjunto capaz de comportar melhor as mudanças futuras. Entidades normalizadas não possuem redundâncias

(duplicação de dados) acidental. Cada atributo está relacionado com sua própria entidade e não se mistura com atributos relativos à entidades diferentes.

A normalização corresponde na realidade à formalização de regras baseadas no fato que as entidades possuem anomalias de actualização.

Conceito de Normalização

Page 4: Aula 5   normalização dos dados

Dada a entidade:

PEDIDO (numero_pedido + data_pedido + numero_cliente + nome_cliente + endereco_cliente + ( numero_produto + nome_produto + qtde_pedida +preco_produto + total_produto) + total_pedido)

Quais as anomalias de actualização que acontecerão se: Um produto for descontinuado por seu fornecedor? O nome do produto for mudado? O cliente mudar de endereço? Os produtos ou as quantidades pedidas pelo cliente forem

mudadas e o cliente esqueceu o número do pedido?

Anomalias de Actualização

Page 5: Aula 5   normalização dos dados

Dados os atributos “A” e “B” de uma entidade,

diz-se que “B” é funcionalmente dependente de “A” se e somente se, a cada valor de “A” está associado um único valor de “B”.

Em outras palavras, se conhecermos o valor de “A” então podemos encontrar o valor de “B” associado a ele.

Dependência Funcional

Page 6: Aula 5   normalização dos dados

Exemplo de dependência

Funcional

Page 7: Aula 5   normalização dos dados

Dado um atributo ou um conjunto de atributos

“B” de uma entidade, sendo a chave primária composta por um conjunto de atributos “A”, diz-se que “B” é completamente dependente funcional da chave primária, se e somente se, a cada valor da chave (e não a parte dele), está associado um valor para cada atributo do conjunto “B”.

Dependência Funcional Composta ou Completa

Page 8: Aula 5   normalização dos dados

Dados os atributos “A”, “B” e “C” de uma

entidade, sendo “A” a chave primária, diz-se que “B” e “C” são dependentes transitivos se e somente se, forem funcionalmente dependente de “A” além de existir uma dependência funcional entre eles.

Dependência Transitiva

Page 9: Aula 5   normalização dos dados

Exemplo dependência

Transitiva

Page 10: Aula 5   normalização dos dados

Uma entidade está na 1FN se ela não contém

grupos de atributos repetitivos (multi-valorados).

Entidade não normalizada PedidoData_pedido, numero_cliente_nome_clienteEndereco_cliente são funcinalmente dependentesDo numero_pedido Nome_produdo,qtde_pedida, preco_produto,Total_produto são dependentes do numero_produto

1ª Forma Normal

Page 11: Aula 5   normalização dos dados

1ª Forma Normal

Page 12: Aula 5   normalização dos dados

Uma entidade está na 2FN se ela está na 1FN

e seus atributos são funcionalmente dependentes de sua chave (primária) completa.

2ª Forma Normal

Page 13: Aula 5   normalização dos dados

2ª Forma Normal

Page 14: Aula 5   normalização dos dados

Uma entidade está na 3FN se ela está na 2FN

e não possui dependências transitivas. Uma entidade que está na 2FN pode ter um atributo que não é uma chave mas que por si identifica outros atributos. Refere-se a isto como uma dependência transitiva.

3ª Forma Normal

Page 15: Aula 5   normalização dos dados

3ª Forma Normal

Page 16: Aula 5   normalização dos dados

Simplificação do processo de NormalizaçãoA partir do diagrama de

dependências funcionais podemos obter directamente as entidades na terceira forma normal. Para isso, devemos especificar uma entidade para cada conjunto de setas que o diagrama de dependências. A chave primária será formada pelos atributos dos quais partem as setas:

Page 17: Aula 5   normalização dos dados

Se duas entidades possuírem a mesma chave de identificação:

Elas são a mesma entidade; Seus atributos se complementam; As suas ocorrências se complementam;

Quando um atributo ou um conjunto de atributos identificadores de uma determinada entidade, for(em) também atributo(s) de uma outra entidade, deve haver um relacionamento do tipo 1:N entre elas.

Atributos comuns a mais de uma entidade, devem ser, obrigatoriamente, chaves de identificação em uma das entidades; caso contrário será uma simples redundância.

Nenhum atributo componente de uma chave primária deve poder assumir um valor nulo. Decorre do fato de que todos os objetos que se quer representar devam ser distinguíveis entre si.

Um atributo que seja chave estrangeira só pode assumir: Valor nulo; Valor para o qual exista uma ocorrência da entidade da qual ela é chave

primária.

Regras Práticas

Page 18: Aula 5   normalização dos dados

FUNCIONARIO(Mat, Nome, DtNasc,

Nacionalidade, Sexo, EstCivil, RG, CIC, Endereco, Tel, DtAdmissao,(Cargo, DtInicioCargo, DtFimCargo), (NomeDependente, DtNascDependente))

Exercicio