Normalização de dados e as formas normais. Docente : Pedro F. Carvalho.

Documentos relacionados
DEPENDÊNCIA FUNCIONAL E

NORMALIZAÇÃO. Adão de Melo Neto

Banco de Dados. Dependência Funcional e Normalização de Dados. Prof. Walteno Martins Parreira Jr 1

NORMALIZAÇÃO. Quantidade do Produto. Produto

Banco de Dados. Professora: Luciana Faria

Banco de Dados Aula 02

Parte NORMALIZAÇÃO. As regras mais importantes oferecidas pelo Sistema Gerenciador de Banco de Dados. são:

BANCO DE DADOS I/MODELAGEM DE DADOS Prof. Ricardo Rodrigues Barcelar

Conceitos Básicos de modelagem de dados Modelo conceitual Modelo Lógico Modelo Físico

Objetivos:

Normalização de Dados. Disciplina: Fundamentos de Banco de dados Docente: Kelyn Schenatto


Normalização de Dados. Bancos de Dados I Normalização Principais Conceitos

Banco de Dados I Engenharia Reversa e Normalização

Técnicas de Modelação de Dados

MODELAGEM DE DADOS NORMALIZAÇÃO E INTRODUÇÃO AO DATA W. Inteligência de Negócios

Dependência Funcional e Normalização)

Relembrando... Banco de Dados Professor Vanderlei Frazão

Banco de Dados Modelagem e Normalização

NORMALIZAÇÃO. Lílian Simão Oliveira

Engenharia Reversa de Arquivos e Normalização

Ano: 2014 Banca: FCC Órgão: TJ-AP Prova: Analista Judiciário - Área Apoio Especializado - Tecnologia da Informação

GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC)

Banco de Dados - Senado

DER NORMALIZAÇÃO DE DADOS

Modelo Entidade-Relacionamento (E-R)

Banco de Dados I. Aula 17 - Prof. Bruno Moreno 08/11/2011

SISTEMAS DE INFORMAÇÃO

Normalização. Prof. Rogério Gonçalves Bittencourt, M.Sc.

Modelo Entidade Relacionamento Estendido (ERE)

Normalização de BD 19:08:54. Fundamentos de Banco de Dados - Normalização 1

Tecnologia de Base de Dados Processo de Normalização. MSc. Eugénio Alberto Macumbe

26/03/2012. É uma restrição entre dois conjuntos de atributos do banco de dados. Definição formal: Significa que: Exemplos

1 o Período Administração 24/11/2015

Aula 12 BD1 Dependências Funcionais e Normalização. Profa. Elaine Faria UFU

Normalização. Anomalias Dependência e determinantes Normalização

Normalização para Bancos de Dados Relacionais

Normalização. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes

Normalização para Bancos de Dados Relacionais

Roteiro. Normalização. BCC321 - Banco de Dados I. Ementa. Para que serve a normalização? Posicionamento

Banco de Dados I 4 Normalização

Banco de Dados - INE Projeto de Banco de Dados Relacionais. Prof. Mario Dantas

Tópico: Normalização

Classificação dos Dados

INF1383 -Bancos de Dados

Relembrando... Banco de Dados Professor Vanderlei Frazão

Projeto de Bancos de Dados Relacional- Normalização. Vantagens da decomposição Normalização

Banco de Dados Introdução. Profa.Ms.Denise Neves

Tecnologia de Bases de Dados. Apontamentos sobre Normalização

Modelo Lógico de Dados (MLD) Origens do modelo relacional

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE

Banco de dados. Prof. Alexandre

Cadeira de Tecnologias de Informação. Normalização Relacional

Dependência Funcional e Normalização. Relembrando: Primeira Forma Normal (1FN) Relembrando: Segunda Forma Normal (2FN) Terceira Forma Normal (3FN)

Dependência Funcional e Normalização. Qualidade de um Projeto. Semântica dos Atributos. Dependência Funcional e Normalização

TIC Unidade 2 Base de Dados

Folha de cálculo Microsoft Excel

ÁLGEBRA DE BOOLE POSTULADOS, TEOREMAS E PROPRIEDADES

Normalização. Banco de Dados. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Profa. Dra. Cristina Dutra de Aguiar Ciferri.

Os tipos de cardinalidade dos relacionamentos usados em Mysql são:

BANCO DE DADOS. Eliminar redundâncias e inconsistências de um banco de dados, com reorganização mínima dos dados.

Exercício. Exercício

Métodos iterativos para sistemas lineares.

BANCO DE DADOS. Bacharelado em Sistemas de Informação MODELAGEM DE DADOS. Profº Luciano Roberto Rocha. Itararé, 2º período

Banco de Dados. Dependências Funcionais e Normalização de Bancos de Dados Relacionais. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

ENGENHARIA REVERSA DE ARQUIVOS

Tecnologias da informação e comunicação

GBC043 Sistemas de Banco de Dados Normalização de Relações em Projeto de BD

Normalização de dados

A Técnica de Normalização de Banco de Dados (1)

Qualidade de projeto de BD relacional

Cadeira de Tecnologias de Informação. Ano lectivo 2008/09. de Tabelas

Informática. Banco de Dados Relacional. Professor Julio Alves.

NORMALIZAÇÃO DE BASE DE DADOS

Normalização: Noções Básicas

Normalização de Tabelas. Prof. Antonio Almeida de Barros Junior

Bases de Dados. Parte VII Normalização

conteúdos. bases de dados, SGBD e aplicações. conceitos. modelo relacional (DER) conceitos

Modelo Comportamental

Marina Andretta. 10 de outubro de Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis.

Unidade 4 Projeto de BD Relacional

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Bases de Dados. Parte VIII: Normalização

Modelo Relacional. Modelo Relacional. Modelo Relacional. Banco de Dados. Modelo Relacional. Modelo Relacional. Fernando Fonseca Ana Carolina

Opte então pela opção Suplementos disponível do lado esquerdo da tela que se abriu.

Álgebra Linear Semana 01

Bases de Dados aplicadas a Inteligência de Negócios

Profa. Flávia Cristina Bernardini

GBC043 Sistemas de Banco de Dados

Dependências funcionais e normalização

Roteiro da aula. Dependência Funcional e Normalização. Semântica dos Atributos. Qualidade de um Projeto. Dependência Funcional e Normalização

MÓDULO 2 GESTÃO DE BASE DE DADOS

11 NORMALIZAÇÃO: FORMAS NORMAIS

8/9/2008. Curso Superior de Tecnologia em Bando de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan

PROJETO DE BANCO DE DADOS

2010 Diagrama Entidade - Associação

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Transcrição:

Normalização de dados e as formas normais 2009 Email : contato@pedrofcarvalho.com.br

Normalização de dados é o processo formal passo a passo que examina os atributos de uma entidade, com o objetivo de evitar anomalias observadas na inclusão, exclusão e alteração de registros. Uma regra de ouro que devemos observar quando do projeto de um Banco de Dados baseado no Modelo Relacional de Dados é a de "não misturar assuntos em uma mesma Tabela". Por exemplo: na Tabela Clientes devemos colocar somente campos relacionados com o assunto Clientes. Não devemos misturar campos relacionados com outros assuntos, tais como Pedidos, Produtos, etc. Essa "Mistura de Assuntos" em uma mesma tabela acaba por gerar repetição desnecessária dos dados bem como inconsistência dos dados. Normalmente após a aplicação das regras de normalização de dados, algumas tabelas acabam sendo divididas em duas ou mais tabelas, o que no final gera um número maior de tabelas do que o originalmente existente. Este processo causa a simplificação dos atributos de uma tabela, colaborando significativamente para a estabilidade do modelo de dados, reduzindo-se consideravelmente as necessidades de manutenção. Objetivos Minimização de redundâncias e inconsistências; Facilidade de manipulações do banco de dados; Facilidade de manutenção do sistema de Informação. As 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 (ou regras de normalização), na prática usamos um conjunto de três Formas Normais. Vejamos as três primeiras formas normais do processo de normalização de dados. Primeira Forma Normal (1FN) Segunda Forma Normal (2FN) Terceira Forma Normal (3FN) Apesar de existir outras formas normais como a quarta forma normal e quinta forma normal, apenas as três primeiras tem sido considerada atualmente. As formas normais são importantes instrumentos para resolver antecipadamente problemas na estrutura do banco de dados. Para aplicar a normalização de dados é necessário considerar a sequência das formas normais, isto é, para aplicar a segunda forma normal por exemplo, é necessário que seja aplicado a primeira

forma normal. Da mesma forma, para aplicar a terceira forma normal é necessário que já tenha sido feita a normalização na segunda forma normal.

Primeira Forma Normal 1FN - Normalização de dados Uma relação estará na Primeira forma normal 1FN, se e somente se todos os domínios básicos contiverem somente valores atômicos (não contiver grupos repetitivos). Em outras palavras podemos definir que a primeira forma normal não admite repetições ou campos que tenha mais que um valor. Procedimentos: a) Identificar a chave primária da entidade; b) Identificar o grupo repetitivo e removê-lo da entidade; c) Criar uma nova entidade com a chave primária da entidade anterior e o grupo repetitivo. A chave primária da nova entidade será obtida pela concatenação da chave primária da entidade inicial e a do grupo repetitivo. 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: Tabela desnormalizada, ou seja, não está na 1ª forma normal Analisando teremos:

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: Tabela ainda não está na primeira forma normal Mesmo com o ajuste acima, a tabela ainda não está na primeira forma normal, pois há clientes com mais de um telefone e os valores estão em uma mesma célula. Para normalizar será necessário criar uma nova tabela para armazenar os números dos telefones e o campo-chave da tabela cliente. Veja o resultado a seguir: Tabela na primeira forma normal Tabela na 1ª forma normal No exempo acima foi gerado uma segundo entidade para que a primeira forma normal fosse satisfeita, contudo é possível manter a tabela original, admitindo-se valores duplos em uma mesma coluna, como exemplo o campo telefone ficaria assim: 11-3400-3563 e 19-3500-9650.

Segunda Forma Normal 2FN - Normalização de dados Uma tabela está na Segunda Forma Normal 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela). Se o nome do produto já existe na tabela produtos, então não é necessário que ele exista na tabela de produtos. A segunda forma normal trata destas anomalias e evita que valores fiquem em redundâcia no banco de dados. Procedimentos: a) Identificar os atributos que não são funcionalmente dependentes de toda a chave primária; b) Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles. A chave primária da nova entidade será o atributo do qual os atributos do qual os atributos removidos são funcionalmente dependentes. 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: 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: Tabela na segunda forma normal Tabela na 2ª forma normal Conforme visto na Primeira forma normal, quando aplicamos normalização é comum gerar novas tabelas a fim de satisfazer as formas normais que estão sendo aplicadas.

Terceira Forma Normal 3FN - Normalização de dados 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 terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela. Procedimentos: a) Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave; b) Removê-los. A chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes. Exemplo de normalização na terceira forma normal Considere a tabela abaixo: 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: Tabela na terceira forma normal