| Linha 21: | Linha 21: | ||
<br> | <br> | ||
* ''2a. Forma Normal - 2FN''' | * '''2a. Forma Normal - 2FN'''' | ||
** Uma tabela estará na 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primaria. | ** Uma tabela estará na 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primaria. | ||
* P ara se aplicar a 2FN é necessario: | * P ara se aplicar a 2FN é necessario: | ||
| Linha 27: | Linha 27: | ||
** 2-Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles. | ** 2-Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles. | ||
* ''3a. Forma Normal - 3FN''' | * '''3a. Forma Normal - 3FN'''' | ||
** Uma tabela está na Terceira Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave. Na 3FN nenhum campo é resultado da relação de outros campos. | ** Uma tabela está na Terceira Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave. Na 3FN nenhum campo é resultado da relação de outros campos. | ||
* Para se aplicar a 3FN é necessario: | * Para se aplicar a 3FN é necessario: | ||
Edição das 18h31min de 16 de novembro de 2017
Conceito
- Normalização é um processo no qual se aplicam regras a todas as tabelas de um banco de dados
- Objetivo: evitar falhas no projeto, exemplos:
- Redundância de dados
- Mistura de diferentes assuntos numa mesma tabela
- Ineficiência no uso das tabelas
Formas Normais
- Sequência de passos que podem ser aplicados a uma proposta inicial de um DER de forma que posteriormente teremos um padrão normalizado
- 1a. Forma Normal - 1FN
- Uma tabela estará na 1FN se não houver grupo de dados repetidos, isto é, se todos os dominios onde os valores estão armazenados são unicos. Em outras palavras podemos definir que a primeira forma normal não admite repetições ou campos que tenha mais que um valor.
- Para se aplicar a 1FN é necessario:
- 1-Identificar a chave(endereço) primaria da entidade;
- 2-Identificar o grupo repetitivo e remove-lo da entidade;
- 3-Criar uma nova entidade com a chave da entidade anterior e o grupo repetitivo.
- 2a. Forma Normal - 2FN'
- Uma tabela estará na 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primaria.
- P ara se aplicar a 2FN é necessario:
- 1-Identificar os atributos não dependentes de toda a chave primaria;
- 2-Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles.
- 3a. Forma Normal - 3FN'
- Uma tabela está na Terceira Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave. Na 3FN nenhum campo é resultado da relação de outros campos.
- Para se aplicar a 3FN é necessario:
- 1-Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave;
- 2-Removê-los.
Exemplos
| chave | nome | endereço |
|---|---|---|
| U001 | matheus | av. floriano peixoto bairro umuarama |
| U002 | vitor | av. rondon pacheco bairro saraiva |
| U003 | rafael | av. brasil bairro Brasil |
| chave | nome | rua/av | bairro |
|---|---|---|---|
| U001 | matheus | av. floriano peixoto | bairro umuarama |
| U002 | vitor | av. Rondon Pacheco | bairro Saraiva |
| U003 | rafael | av. Brasil | bairro Brasil |
- 2FN.
| N_Pedido | Codigo_produto | Qtd | unidade | subtotal |
|---|---|---|---|---|
| 1 | P01 | 5 | 200 | 1000 |
| 2 | P02 | 5 | 100 | 500 |
| 3 | P03 | 5 | 500 | 2500 |
| codigo_produto | produto |
|---|---|
| P01 | mesa |
| P02 | cadeira |
| P03 | computador |
- 3FN.
| n_pedido | codigo_produto | qtd | unidade |
|---|---|---|---|
| 1 | P01 | 5 | 100 |
| 2 | P02 | 5 | 200 |
| 3 | P03 | 5 | 300 |
Referências