Toda definiçao das regras formais
Etiqueta: visualeditor
Linha 1: Linha 1:
[[Arquivo:Exemplo.jpg]]== '''Conceito''' ==
== '''Conceito''' ==


===== '''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. =====
===== '''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. =====
Linha 11: Linha 11:


===== 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. =====
===== 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:'''


'''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.


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.''
-Remover a coluna da tabela e criar uma nova tabela com esses dados.


3 tipos de formas normais
Exemplo de segunda forma normal


Primeira Forma Normal (1FN)
Considere a tabela vendas abaixo:


Segunda Forma Normal (2FN)
Vendas


Terceira Forma Normal (3FN)
N_pedido


'''Conceito de cada forma:'''
Código_produto


1FN – Primeira Forma Normal
Produto


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.
Quant
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
Valor_unit
Considere a tabela cliente abaixo:


Cliente
Subtotal
Código_cliente
Nome
* Telefone
Endereço


Agora a tabela com os dados:
Agora a tabela com os dados:
[[Arquivo:imagemtrabalho111.gif]]
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 4
[[Arquivo:imagemtrabalho112.gif]]
 
Tabela na primeira forma normal
Tabela não está na segunda forma normal
[[Arquivo:imagemtrabalho113.gif]]
 
Tabela na primeira 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 forma normal  


Toda tabela não precisa obrigatoriamente ser normalizada com 1FN
===== '''3FN – Terceira Forma Normal'''=====
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.
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


'''Segunda forma normal''' trata destas anomalias e evita que valores fiquem em redundância no banco de dados.
Exemplo de normalização na terceira forma normal  


1) Identificar os atributos que não são funcionalmente dependentes de toda a chave primária:
Considere a tabela abaixo:  


2) Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles.
Imagem 7


A chave primária da nova entidade será o atributo do qual os atributos do qual os atributos removidos são funcionalmente dependentes.
Tabela não está na terceira forma normal 


'''Terceira forma normal''' temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela.
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.  


Procedimentos
Para normalizar esta tabela na '''terceira forma normal''' teremos de eliminar a coluna subtotal, como no exemplo a seguir:


1) Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave
Imagem 8 


2) Removê-los.
Tabela na terceira forma normal


Bibliografia:
Bibliografia:

Edição das 20h14min de 7 de novembro de 2016

Conceito

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.

Definição de redundâncias e inconsistências:

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.
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 .
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