SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
Bancos de Dados
Multimídia
Ticianne Darin
Guidelines para Projeto de Bancos
de Dados Relacionais
• Projete um esquema de relação de forma que seja fácil
  explicar seu significado. Não combine atributos de múltiplos
  tipos de entidades e relacionamentos numa única relação.
• Evite anomalias de inserção, exclusão ou de modificação
  não sejam possíveis. Caso não seja possível evitá-las,
  assegure-se que os programas que atualizam o banco de
  dados vão funcionar corretamente.
• Tanto quanto possível, evita colocar atributos numa relação
  cujos valores possam ser frequentemente valores nulos.
• Projete esquemas de relações de modo que elas possam
  ser juntadas com condições de junção de igualdade sobre
  atributos que sejam chaves primárias ou chaves
  estrangeiras, de forma que tuplas espúrias não sejam
  geradas.
Primeira Forma Normal (1NF)
• É parte da definição formal de uma
  relação; foi definida para não permitir
  atributos multivalorados, atributos
  compostos e suas combinações.
• Uma relação está em 1FN se e somente
  se todos os seus atributos contêm
  apenas valores atômicos (simples,
  indivisíveis).
Segunda Forma Normal (2NF)
• Uma relação está em 2NF se e somente
  se estiver em 1NF e todo atributo não-
  primo (isto é, que não seja membro de
  uma chave) for totalmente dependente
  de qualquer chave.
Terceira Forma Normal (3NF)
• Uma relação está em 3NF se e somente se
  estiver em 2NF e nenhum atributo não-
  primo (isto é, que não seja membro de uma
  chave) for transitivamente dependente da
  chave primária.
• Em outras palavras, para toda FD X -> A,
  uma das duas condições seguintes devem
  valer:
  – X é uma superchave ou
  – A é membro de uma chave candidata
Algoritmo para decomposição em 3NF
(preservando as dependências e sem
perdas na junção)

• Entrada: Esquema de relação R e
  dependências F.
• Saída: Uma decomposição D de R tal
  que D tem junção sem perdas, as
  dependências de R são preservadas, e
  todas as relações de D estão em 3NF.
Algoritmo para decomposição em
3NF
• 1. Encontre a cobertura mínima G para F;
• 2. Para cada X do lado esquerdo de uma FD em
  G, crie um esquema de relação {XA1... An} em
  D, onde X  A1, ..., X  An são todas as FDs
  em G com X do lado esquerdo.
• 3. Coloque todos os atributos restantes em uma
  única relação.
• 4. Se uma chave de R não está contida em
  nenhum dos esquemas de relação, crie uma
  relação que contenha os atributos da chave.
Cobertura Mínima de FDs
• Um conjunto de FDs F é mínimo se satisfaz as
  seguintes condições:
   – Todas as FDs em F tem um único atributo do lado
     direito.
   – Não se pode remover uma FD de F e ainda ter um
     conjunto de FDs que é equivalente a F.
   – Não se pode substituir uma FD X A em F por Y  A,
     onde Y  X e ainda ter um conjunto de FDs que é
     equivalente a F.
• Obs: Podem existir várias coberturas (fecho) mínimo
  para um conjunto de FDs F. Não existe algoritmo
  simples para determinar uma cobertura mínima.
Algoritmo para Determinar a
Cobertura Mínima para F
• Passo 1
   – Obtenha o conjunto equivalente H com somente um atributo
     do lado direito

• Passo 2
   – Remova as FDs redundantes em H

• Passo 3
   – Remova atributos redundantes no lado esquerdo das FDs (é
     possível chegar ao atributo do lado direito, sem alguns dos
     atributos do lado esquerdo?)

• Passo 4
   – Junte todas as FDs que tem o mesmo lado esquerdo
BCNF
• Uma relação esquema R está na BCNF
  se, sempre que houver uma DF X -> A
  em R, então X é uma superchave de R.
• Diferença:
  – Condição que permite que A seja principal
    (parte da chave) está ausente da FNBC

• A maioria dos esquemas de relação que
  estão na 3FN também estão na FNBC
Decomposição em BCNF
• Escolher uma das dependências que viola
  BCNF no conjunto R para decompor R;
  – decompor R em R1 e R2, tendo R1 todos os
    atributos da dependência funcional escolhida, e
    R2 todos os atributos de R exceto Y (em X ->
    Y);
  – repetir os passos anteriores para o conjunto R2;
  – repetir os passos 1 e 2 para o conjunto Ri;
  – parar quando não houver mais dependências
    que viole BCNF em qualquer subconjunto Ri.
Exercicio
Pois que aproveita ao homem ganhar o
mundo inteiro, se perder a sua alma?
Ou que dará o homem em recompensa
da sua alma?
                         Mateus 16.26




            Até a próxima aula!

Mais conteúdo relacionado

Mais procurados

Bdm aula 3 - modelo relacional e restrições de integridade
Bdm   aula 3 - modelo relacional e restrições de integridadeBdm   aula 3 - modelo relacional e restrições de integridade
Bdm aula 3 - modelo relacional e restrições de integridadeTicianne Darin
 
TRFB 2006 - TI - Jaime
TRFB 2006 - TI - JaimeTRFB 2006 - TI - Jaime
TRFB 2006 - TI - JaimeWalter Cunha
 
3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics3º Fast Show - SQL Analytics
3º Fast Show - SQL Analyticsqualidatavix
 
Limites de funções
Limites de funçõesLimites de funções
Limites de funçõesdjfrancis23
 
Bdm aula 9 - operações sql - ticianne darin
Bdm   aula 9 - operações sql - ticianne darinBdm   aula 9 - operações sql - ticianne darin
Bdm aula 9 - operações sql - ticianne darinTicianne Darin
 
PROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESPROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESCarlos Campani
 
Funções, suas propriedades e gráfico
Funções, suas propriedades e gráficoFunções, suas propriedades e gráfico
Funções, suas propriedades e gráficoCarlos Campani
 
Bd 5 Modelo Relacional
Bd  5 Modelo RelacionalBd  5 Modelo Relacional
Bd 5 Modelo RelacionalNelson Sousa
 
Aula 03 transformada de laplace
Aula 03   transformada de laplaceAula 03   transformada de laplace
Aula 03 transformada de laplacericao
 

Mais procurados (11)

Bdm aula 3 - modelo relacional e restrições de integridade
Bdm   aula 3 - modelo relacional e restrições de integridadeBdm   aula 3 - modelo relacional e restrições de integridade
Bdm aula 3 - modelo relacional e restrições de integridade
 
TRFB 2006 - TI - Jaime
TRFB 2006 - TI - JaimeTRFB 2006 - TI - Jaime
TRFB 2006 - TI - Jaime
 
Algoritmos - capítulo 5
Algoritmos - capítulo 5Algoritmos - capítulo 5
Algoritmos - capítulo 5
 
3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics
 
Limites de funções
Limites de funçõesLimites de funções
Limites de funções
 
Teorica 10
Teorica 10Teorica 10
Teorica 10
 
Bdm aula 9 - operações sql - ticianne darin
Bdm   aula 9 - operações sql - ticianne darinBdm   aula 9 - operações sql - ticianne darin
Bdm aula 9 - operações sql - ticianne darin
 
PROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESPROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕES
 
Funções, suas propriedades e gráfico
Funções, suas propriedades e gráficoFunções, suas propriedades e gráfico
Funções, suas propriedades e gráfico
 
Bd 5 Modelo Relacional
Bd  5 Modelo RelacionalBd  5 Modelo Relacional
Bd 5 Modelo Relacional
 
Aula 03 transformada de laplace
Aula 03   transformada de laplaceAula 03   transformada de laplace
Aula 03 transformada de laplace
 

Destaque

Banco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalBanco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalDaniel Brandão
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamentoCarlos Melo
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Ricardo Terra
 
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosCláudio Amaral
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoRademaker Siena
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Vitor Leal Diniz
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Bdm aula 8 - algebra relacional básica e consultas sql - ticianne darin
Bdm   aula 8 - algebra relacional básica e consultas sql - ticianne darinBdm   aula 8 - algebra relacional básica e consultas sql - ticianne darin
Bdm aula 8 - algebra relacional básica e consultas sql - ticianne darinTicianne Darin
 
Bdm aula 4 - modelagem de dados com modelo er
Bdm   aula 4 - modelagem de dados com modelo erBdm   aula 4 - modelagem de dados com modelo er
Bdm aula 4 - modelagem de dados com modelo erTicianne Darin
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDjonathas Cardoso
 
Material Modelagem - Prof. Marcos Alexandruk
Material Modelagem - Prof. Marcos AlexandrukMaterial Modelagem - Prof. Marcos Alexandruk
Material Modelagem - Prof. Marcos AlexandrukHebert Alquimim
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dadosFernando Palma
 

Destaque (13)

Banco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalBanco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - Relacional
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamento
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
 
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Bdm aula 8 - algebra relacional básica e consultas sql - ticianne darin
Bdm   aula 8 - algebra relacional básica e consultas sql - ticianne darinBdm   aula 8 - algebra relacional básica e consultas sql - ticianne darin
Bdm aula 8 - algebra relacional básica e consultas sql - ticianne darin
 
Bdm aula 4 - modelagem de dados com modelo er
Bdm   aula 4 - modelagem de dados com modelo erBdm   aula 4 - modelagem de dados com modelo er
Bdm aula 4 - modelagem de dados com modelo er
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados I
 
Material Modelagem - Prof. Marcos Alexandruk
Material Modelagem - Prof. Marcos AlexandrukMaterial Modelagem - Prof. Marcos Alexandruk
Material Modelagem - Prof. Marcos Alexandruk
 
Apostila modelagem de banco de dados
Apostila modelagem de banco de dadosApostila modelagem de banco de dados
Apostila modelagem de banco de dados
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dados
 

Mais de Ticianne Darin

Ihc2016.2 aula. 13 Avaliação em IHC
Ihc2016.2 aula. 13  Avaliação em IHCIhc2016.2 aula. 13  Avaliação em IHC
Ihc2016.2 aula. 13 Avaliação em IHCTicianne Darin
 
Ihc2016.2 aula. 12 construindo versões interativas dos designs
Ihc2016.2 aula. 12   construindo versões interativas dos designsIhc2016.2 aula. 12   construindo versões interativas dos designs
Ihc2016.2 aula. 12 construindo versões interativas dos designsTicianne Darin
 
Ihc2016.2 aula. 11 projetando a interação
Ihc2016.2 aula. 11   projetando a interaçãoIhc2016.2 aula. 11   projetando a interação
Ihc2016.2 aula. 11 projetando a interaçãoTicianne Darin
 
Hd 2016.1 aula.16 - panorama do design no brasil
Hd 2016.1 aula.16 - panorama do design no brasilHd 2016.1 aula.16 - panorama do design no brasil
Hd 2016.1 aula.16 - panorama do design no brasilTicianne Darin
 
Ihc2016.2 aula. 10 coleta e análise de dados
Ihc2016.2 aula. 10  coleta e análise de dadosIhc2016.2 aula. 10  coleta e análise de dados
Ihc2016.2 aula. 10 coleta e análise de dadosTicianne Darin
 
Hd 2016.1 aula.15 - design pós-moderno
Hd 2016.1 aula.15 - design pós-modernoHd 2016.1 aula.15 - design pós-moderno
Hd 2016.1 aula.15 - design pós-modernoTicianne Darin
 
Ihc2016.2 aula 9 engenharia cognitiva e teoria da ação
Ihc2016.2 aula 9    engenharia cognitiva e teoria da açãoIhc2016.2 aula 9    engenharia cognitiva e teoria da ação
Ihc2016.2 aula 9 engenharia cognitiva e teoria da açãoTicianne Darin
 
Ihc2016.2 aula 7 critérios de qualidade de uso
Ihc2016.2 aula 7   critérios de qualidade de usoIhc2016.2 aula 7   critérios de qualidade de uso
Ihc2016.2 aula 7 critérios de qualidade de usoTicianne Darin
 
Hd 2016.1 aula.14 - art deco e streamline
Hd 2016.1 aula.14 - art deco e streamlineHd 2016.1 aula.14 - art deco e streamline
Hd 2016.1 aula.14 - art deco e streamlineTicianne Darin
 
Ihc2016.2 aula 6 interface e modelo de interação
Ihc2016.2 aula 6   interface e modelo de interaçãoIhc2016.2 aula 6   interface e modelo de interação
Ihc2016.2 aula 6 interface e modelo de interaçãoTicianne Darin
 
Hd 2016.1 aula.13 - estilo internacional
Hd 2016.1 aula.13 - estilo internacionalHd 2016.1 aula.13 - estilo internacional
Hd 2016.1 aula.13 - estilo internacionalTicianne Darin
 
Ihc2016.2 aula 5 contexto de uso e interação
Ihc2016.2 aula 5   contexto de uso e interaçãoIhc2016.2 aula 5   contexto de uso e interação
Ihc2016.2 aula 5 contexto de uso e interaçãoTicianne Darin
 
Hd 2016.1 aula.12 - de stijl
Hd 2016.1 aula.12 - de stijlHd 2016.1 aula.12 - de stijl
Hd 2016.1 aula.12 - de stijlTicianne Darin
 
Ihc2016.2 aula 4 design conceitual
Ihc2016.2 aula 4   design conceitualIhc2016.2 aula 4   design conceitual
Ihc2016.2 aula 4 design conceitualTicianne Darin
 
Hd 2016.1 aula.11_bauhaus
Hd 2016.1 aula.11_bauhausHd 2016.1 aula.11_bauhaus
Hd 2016.1 aula.11_bauhausTicianne Darin
 
Hd 2016.1 aula.10_construtivismo russo
Hd 2016.1 aula.10_construtivismo russoHd 2016.1 aula.10_construtivismo russo
Hd 2016.1 aula.10_construtivismo russoTicianne Darin
 
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismo
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismoHd 2016.1 aula 9_influências das vanguardas europeias - surrealismo
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismoTicianne Darin
 
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmo
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmoHd 2016.1 aula 8_influências das vanguardas europeias - dadaísmo
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmoTicianne Darin
 
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismo
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismoHd 2016.1 aula 7_influências das vanguardas europeias - futurismo
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismoTicianne Darin
 
Ihc2016.2 aula 3 introdução ao design de interação
Ihc2016.2 aula 3   introdução ao design de interaçãoIhc2016.2 aula 3   introdução ao design de interação
Ihc2016.2 aula 3 introdução ao design de interaçãoTicianne Darin
 

Mais de Ticianne Darin (20)

Ihc2016.2 aula. 13 Avaliação em IHC
Ihc2016.2 aula. 13  Avaliação em IHCIhc2016.2 aula. 13  Avaliação em IHC
Ihc2016.2 aula. 13 Avaliação em IHC
 
Ihc2016.2 aula. 12 construindo versões interativas dos designs
Ihc2016.2 aula. 12   construindo versões interativas dos designsIhc2016.2 aula. 12   construindo versões interativas dos designs
Ihc2016.2 aula. 12 construindo versões interativas dos designs
 
Ihc2016.2 aula. 11 projetando a interação
Ihc2016.2 aula. 11   projetando a interaçãoIhc2016.2 aula. 11   projetando a interação
Ihc2016.2 aula. 11 projetando a interação
 
Hd 2016.1 aula.16 - panorama do design no brasil
Hd 2016.1 aula.16 - panorama do design no brasilHd 2016.1 aula.16 - panorama do design no brasil
Hd 2016.1 aula.16 - panorama do design no brasil
 
Ihc2016.2 aula. 10 coleta e análise de dados
Ihc2016.2 aula. 10  coleta e análise de dadosIhc2016.2 aula. 10  coleta e análise de dados
Ihc2016.2 aula. 10 coleta e análise de dados
 
Hd 2016.1 aula.15 - design pós-moderno
Hd 2016.1 aula.15 - design pós-modernoHd 2016.1 aula.15 - design pós-moderno
Hd 2016.1 aula.15 - design pós-moderno
 
Ihc2016.2 aula 9 engenharia cognitiva e teoria da ação
Ihc2016.2 aula 9    engenharia cognitiva e teoria da açãoIhc2016.2 aula 9    engenharia cognitiva e teoria da ação
Ihc2016.2 aula 9 engenharia cognitiva e teoria da ação
 
Ihc2016.2 aula 7 critérios de qualidade de uso
Ihc2016.2 aula 7   critérios de qualidade de usoIhc2016.2 aula 7   critérios de qualidade de uso
Ihc2016.2 aula 7 critérios de qualidade de uso
 
Hd 2016.1 aula.14 - art deco e streamline
Hd 2016.1 aula.14 - art deco e streamlineHd 2016.1 aula.14 - art deco e streamline
Hd 2016.1 aula.14 - art deco e streamline
 
Ihc2016.2 aula 6 interface e modelo de interação
Ihc2016.2 aula 6   interface e modelo de interaçãoIhc2016.2 aula 6   interface e modelo de interação
Ihc2016.2 aula 6 interface e modelo de interação
 
Hd 2016.1 aula.13 - estilo internacional
Hd 2016.1 aula.13 - estilo internacionalHd 2016.1 aula.13 - estilo internacional
Hd 2016.1 aula.13 - estilo internacional
 
Ihc2016.2 aula 5 contexto de uso e interação
Ihc2016.2 aula 5   contexto de uso e interaçãoIhc2016.2 aula 5   contexto de uso e interação
Ihc2016.2 aula 5 contexto de uso e interação
 
Hd 2016.1 aula.12 - de stijl
Hd 2016.1 aula.12 - de stijlHd 2016.1 aula.12 - de stijl
Hd 2016.1 aula.12 - de stijl
 
Ihc2016.2 aula 4 design conceitual
Ihc2016.2 aula 4   design conceitualIhc2016.2 aula 4   design conceitual
Ihc2016.2 aula 4 design conceitual
 
Hd 2016.1 aula.11_bauhaus
Hd 2016.1 aula.11_bauhausHd 2016.1 aula.11_bauhaus
Hd 2016.1 aula.11_bauhaus
 
Hd 2016.1 aula.10_construtivismo russo
Hd 2016.1 aula.10_construtivismo russoHd 2016.1 aula.10_construtivismo russo
Hd 2016.1 aula.10_construtivismo russo
 
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismo
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismoHd 2016.1 aula 9_influências das vanguardas europeias - surrealismo
Hd 2016.1 aula 9_influências das vanguardas europeias - surrealismo
 
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmo
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmoHd 2016.1 aula 8_influências das vanguardas europeias - dadaísmo
Hd 2016.1 aula 8_influências das vanguardas europeias - dadaísmo
 
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismo
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismoHd 2016.1 aula 7_influências das vanguardas europeias - futurismo
Hd 2016.1 aula 7_influências das vanguardas europeias - futurismo
 
Ihc2016.2 aula 3 introdução ao design de interação
Ihc2016.2 aula 3   introdução ao design de interaçãoIhc2016.2 aula 3   introdução ao design de interação
Ihc2016.2 aula 3 introdução ao design de interação
 

Bdm aula 7 - normalização parte2 - ticianne darin

  • 2. Guidelines para Projeto de Bancos de Dados Relacionais • Projete um esquema de relação de forma que seja fácil explicar seu significado. Não combine atributos de múltiplos tipos de entidades e relacionamentos numa única relação. • Evite anomalias de inserção, exclusão ou de modificação não sejam possíveis. Caso não seja possível evitá-las, assegure-se que os programas que atualizam o banco de dados vão funcionar corretamente. • Tanto quanto possível, evita colocar atributos numa relação cujos valores possam ser frequentemente valores nulos. • Projete esquemas de relações de modo que elas possam ser juntadas com condições de junção de igualdade sobre atributos que sejam chaves primárias ou chaves estrangeiras, de forma que tuplas espúrias não sejam geradas.
  • 3. Primeira Forma Normal (1NF) • É parte da definição formal de uma relação; foi definida para não permitir atributos multivalorados, atributos compostos e suas combinações. • Uma relação está em 1FN se e somente se todos os seus atributos contêm apenas valores atômicos (simples, indivisíveis).
  • 4. Segunda Forma Normal (2NF) • Uma relação está em 2NF se e somente se estiver em 1NF e todo atributo não- primo (isto é, que não seja membro de uma chave) for totalmente dependente de qualquer chave.
  • 5. Terceira Forma Normal (3NF) • Uma relação está em 3NF se e somente se estiver em 2NF e nenhum atributo não- primo (isto é, que não seja membro de uma chave) for transitivamente dependente da chave primária. • Em outras palavras, para toda FD X -> A, uma das duas condições seguintes devem valer: – X é uma superchave ou – A é membro de uma chave candidata
  • 6. Algoritmo para decomposição em 3NF (preservando as dependências e sem perdas na junção) • Entrada: Esquema de relação R e dependências F. • Saída: Uma decomposição D de R tal que D tem junção sem perdas, as dependências de R são preservadas, e todas as relações de D estão em 3NF.
  • 7. Algoritmo para decomposição em 3NF • 1. Encontre a cobertura mínima G para F; • 2. Para cada X do lado esquerdo de uma FD em G, crie um esquema de relação {XA1... An} em D, onde X  A1, ..., X  An são todas as FDs em G com X do lado esquerdo. • 3. Coloque todos os atributos restantes em uma única relação. • 4. Se uma chave de R não está contida em nenhum dos esquemas de relação, crie uma relação que contenha os atributos da chave.
  • 8. Cobertura Mínima de FDs • Um conjunto de FDs F é mínimo se satisfaz as seguintes condições: – Todas as FDs em F tem um único atributo do lado direito. – Não se pode remover uma FD de F e ainda ter um conjunto de FDs que é equivalente a F. – Não se pode substituir uma FD X A em F por Y  A, onde Y  X e ainda ter um conjunto de FDs que é equivalente a F. • Obs: Podem existir várias coberturas (fecho) mínimo para um conjunto de FDs F. Não existe algoritmo simples para determinar uma cobertura mínima.
  • 9. Algoritmo para Determinar a Cobertura Mínima para F • Passo 1 – Obtenha o conjunto equivalente H com somente um atributo do lado direito • Passo 2 – Remova as FDs redundantes em H • Passo 3 – Remova atributos redundantes no lado esquerdo das FDs (é possível chegar ao atributo do lado direito, sem alguns dos atributos do lado esquerdo?) • Passo 4 – Junte todas as FDs que tem o mesmo lado esquerdo
  • 10. BCNF • Uma relação esquema R está na BCNF se, sempre que houver uma DF X -> A em R, então X é uma superchave de R. • Diferença: – Condição que permite que A seja principal (parte da chave) está ausente da FNBC • A maioria dos esquemas de relação que estão na 3FN também estão na FNBC
  • 11. Decomposição em BCNF • Escolher uma das dependências que viola BCNF no conjunto R para decompor R; – decompor R em R1 e R2, tendo R1 todos os atributos da dependência funcional escolhida, e R2 todos os atributos de R exceto Y (em X -> Y); – repetir os passos anteriores para o conjunto R2; – repetir os passos 1 e 2 para o conjunto Ri; – parar quando não houver mais dependências que viole BCNF em qualquer subconjunto Ri.
  • 13. Pois que aproveita ao homem ganhar o mundo inteiro, se perder a sua alma? Ou que dará o homem em recompensa da sua alma? Mateus 16.26 Até a próxima aula!