Toda definiçao das regras formais
Etiqueta: visualeditor
Página substituída por '= '''Conceito''' = <br> = Formas Normais = <br> = Exemplos = <br> = Referências = <br>'
Linha 1: Linha 1:
== '''Conceito''' ==
= '''Conceito''' =
<br>


===== '''Normalização''' é o processo que organiza os dados de uma tabela de um banco de dados, aplicado as regras de formas normais.Para executar o processo de normalização requer muita atenção, tendo que separar diferentes informações em diferentes tabelas para evitar redundâncias e inconsistências , pois o objetivo é melhorar a performance e facilitar a manutenção do banco de dados. =====
= Formas Normais =
Definição de redundâncias e inconsistências:
<br>


===== '''Dados redundantes''':Armazenamento repetitivo de dados, tem como consequência  maior ocupação de dados de armazenamento no disco,afetando o desempenho do sistema e dificultado a manutença no banco de dados. =====
= Exemplos =
<br>


===== '''Dependência inconsistente''' : E quando um dado na esta no lugar apropriado na  tabela , com isso a tabela fica bagunçada ,e durante o processo de procura de um determinado dado,ele pode estar ausente ou danificado . =====
= Referências =
 
<br>
===== '''Aplicação de normalização na Tabela''' =====
 
===== Não se pode misturar assuntos diferentes em uma mesma tabela , exemplo: na tabela de clientes, deve ficar  somente em campos relacionados com o assunto clientes. Não se pode misturar junto com  os pedidos ,,produtos e outras coisas . Isso pode gerar uma repetição sem necessidade em uma mesma tabela, virando uma dependência inconsistente. =====
'''Formas normais:'''
 
===== O Processo de normalização aplica uma série de regras sobre as tabelas de um banco de dados, para verificar se estas estão corretamente projetadas. Embora existam cinco '''formas normais''' , nos usamos um conjunto de três ''formas normais , das 5 formas.''=====
 
===== 3 tipos de formas normais =====
 
===== Conceito: =====
'''1FN – Primeira Forma Normal'''
 
===== Uma entidade estará na 1FN, se e somente se, todos seus atributos (colunas) forem atômicos, ou seja não conter grupos repetitivos ou colunas que tenham mais de um valor.=====
==== Passos a serem aplicados para consolidação da 1FN: ====
=====  -Identificação da chave primária da tabela. =====
=====  -Identificação da coluna que contem dados repetidos e removê-las. =====
=====  -Criação de uma nova tabela com chave primária para armazenamento do dado repetido.=====
=====  -Criar uma relação entre a tabela principal e a tabela secundária=====
Exemplo de normalização de dados. Primeira forma normal Considere a tabela cliente abaixo:
 
Cliente Código_cliente Nome
 
Telefone
 
Endereço
 
Agora a tabela com os dados:
 
imagem1
 
Tabela desnormalizada, ou seja, não está na 1ª forma normal
 
Todos os clientes possuem Rua, CEP e Bairro, e essas informações estão na mesma célula da tabela, logo ela não está na primeira forma normal. Para normalizar, deveremos colocar cada informação em uma coluna diferente, como no exemplo a seguir.
 
imagem 2
 
Tabela na primeira forma norma
 
Imagem 3
 
Tabela na primeira forma normal
 
Toda tabela não precisa obrigatoriamente ser normalizada com 1FN A normalização é um processo corretivo que deve ser aplicado em casos específicos onde o problema for identificado. Claro que tudo irá depender de como a análise dos dados foram feitas, mas um analista experiente, já a aplica a normalização por padrão.
===== '''2FN – Segunda Forma Normal'''=====
===== Uma entidade está na 2FN, se e somente se, estiver na 1FN e todos seus atributos (colunas) não chaves, dependam unicamente da chave primária. Se algum atributo depende de apenas uma parte da chave primária, isso é considerada uma violação da 2FN. =====
 
==== Passos a serem aplicados para consolidação da 2FN: ====
-Identificar colunas que não são funcionalmente dependentes da chave primária da tabela.
 
-Remover a coluna da tabela e criar uma nova tabela com esses dados.
 
Exemplo de segunda forma normal
 
Considere a tabela vendas abaixo:
 
Vendas
 
N_pedido
 
Código_produto
 
Produto
 
Quant
 
Valor_unit
 
Subtotal
 
Agora a tabela com os dados:
 
Imagem 4
 
Tabela não está na segunda forma normal
 
Analisando teremos:
 
===== O nome do produto depende do código do produto, porém não depende de N_pedido que é a chave primária da tabela, portanto não está na segunda forma normal. Isto gera problemas com a manutenção dos dados, pois se houver alteração no nome do produto teremos que alterar em todos os registros da tabela venda. =====
Para normalizar esta tabela teremos de criar a tabela Produto que ficará com os atributos Código_produto e produto e na tabela Venda manteremos somente os atributos N_pedido, código_produto, quant, valor_unit e subtotal. Veja o resultado abaixo:
 
Imagem 5
 
Tabela na segunda forma normal
 
Imagem 6
 
Tabela na 2ª forma normal
 
===== '''3FN – Terceira Forma Normal'''=====
Uma entidade está na 3FN, se e somente se, estiver na 2FN e todos os atributos (colunas) não chave, forem mutuamente independentes, isto é, não há dependência funcional entre elas, e todas dependem única e exclusivamente da chave primária de forma irredutível.
 
==== Passos a serem aplicados para consolidação da 3FN: ====
– Identificar as colunas que são funcionalmente dependentes das outras colunas não chave
 
– Remover essas colunas
 
Exemplo de normalização na terceira forma normal
 
Considere a tabela abaixo:
 
Imagem 7
 
Tabela não está na terceira forma normal 
 
Considerando ainda a nossa tabela Venda, veremos que a mesma não está na '''terceira forma normal,''' pois o subtotal é o resultado da multiplicação Quant X Valor_unit, desta forma a coluna subtotal depende de outras colunas não-chave.
 
Para normalizar esta tabela na '''terceira forma normal''' teremos de eliminar a coluna subtotal, como no exemplo a seguir:
 
Imagem 8 
 
Tabela na terceira forma normal
 
Bibliografia:
 
https://pt.wikipedia.org/wiki/Normaliza%C3%A7%C3%A3o_de_dados#Formas_Normais
 
http://www.luis.blog.br/normalizacao-de-dados-e-as-formas-normais.aspx
 
https://support.microsoft.com/pt-br/kb/283878
 
http://imasters.com.br/banco-de-dados/desnormalizacao-e-redundancia-controlada-em-bancos-de-dados-relacionais/?trace=1519021197&source=single
 
http://www.ifc-camboriu.edu.br/~frozza/2011.1/IE10/IE10-BDD-Aula003-Normalizacao-Revisao.pdf

Edição das 22h02min de 21 de maio de 2017

Conceito


Formas Normais


Exemplos


Referências