SlideShare uma empresa Scribd logo
1 de 22
MODELAGEM EM BANCO DE DADOS NORMALIZAÇÃO Prof. Marcos Alexandruk UNINOVE
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK NORMALIZAÇÃO ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK OBJETIVOS PRINCIPAIS ,[object Object],[object Object],[object Object],[object Object],[object Object]
NORMALIZAÇÃO PARTE 1: CONCEITOS ÚTEIS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK CHAVES Chave candidata :  atributo ou conjunto de atributos que são únicos para cada registro. Cada tabela pode ter uma ou várias chaves deste tipo. Exemplos: CODIGO, CPF, RG
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK CHAVES Chave primária :  Escolhida entre as  chaves candidatas para ser o identificador principal da tabela. (PK – Primary Key)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK CHAVES Chaves alternativas :  São as  chaves candidatas  que não foram definidas como chaves primárias.
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK CHAVES Chave estrangeira :  Atributo ou conjunto de atributos que faz a ligação com a chave primária de outra tabela. (FK – Foreign Key)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK DEPENDÊNCIA FUNCIONAL (DF) Sempre que um atributo  X  identifica um atributo  Y há entre eles uma  dependência funcional . X  é o determinante e  Y  é o dependente. Representação: X      Y  (lê-se: X determina Y ou Y é dependente de X) cidade    estado (estado é dependente de cidade) estado    país (país é dependente de estado)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK TRIVIALIDADE A  dependência funcional trivial  indica que um determinante com mais de um atributo pode determinar seus próprios membros  quando isolados. {banco,agencia}    banco {banco,agencia}    agencia A  dependência funcional não trivial *  indica que um determinante identifica  outro atributo  qualquer. {banco,agencia}    cidade (cidade não faz parte do determinante) * Esta DF é a que nos interessa no processo de normalização.
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK TRANSITIVIDADE Se um atributo X determina Y e se Y determina Z, Podemos dizer que X determina Z de  forma transitiva , Isto é, existe uma  dependência funcional transitiva X para Z. cidade    estado estado    país cidade    país (cidade determina país de forma transitiva)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK D F IRREDUTÍVEL À ESQUERDA O lado esquerdo de uma  dependência funcional  é irredutível à esquerda  quando o determinante está na sua  forma mínima ,  não é possível reduzir a quantidade de atributos determinantes sem perder a dependência funcional . {cidade,estado}    país   (Não está na forma irredutível à esquerda*) * podemos ter somente o estado como determinante estado    país   (Está na forma irredutível à esquerda) NOTA:  Nem sempre estar na forma irredutível à esquerda significa possuir um determinante com apenas um atributo!
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK DEPENDÊNCIA MULTIVALORADA O valor de um atributo determina um  conjunto de valores de um outro atributo. {CPF}    {nome} (um nome para cada CPF) {CPF}    {dependente} (vários dependentes para cada CPF) Uma dependência multivalorada é representada por: X    Y  (X multidetermina Y ou Y é multidependente de X)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO ©  PROF. MARCOS ALEXANDRUK PARTE 1 – EXERCÍCIOS: ,[object Object],[object Object],[object Object],[object Object],[object Object]
NORMALIZAÇÃO PARTE 2: FORMAS NORMAIS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 1FN – Primeira Forma Normal: Os atributos da tabela não contêm grupos de repetição (tabelas aninhadas). Passando para a 1FN: A tabela a seguir NÃO está na 1FN: D F MULTIVALORADA 10/02/2005 1800 Analista Sr Claudio 1003 Beta 12 05/01/2005 1200 Analista Pl Daniela 1004 02/01/2005 1800 Analista Sr Antonio 1001 Alfa 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc DescProj CodProj Projeto 10/02/2005 1800 Analista Sr Claudio 1003 12 05/01/2005 1200 Analista Pl Daniela 1004 11 02/01/2005 1800 Analista Sr Antonio 1001 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc CodProj ProjFunc Beta 12 Alfa 11 DescProj CodProj Projeto
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 2FN – Segunda Forma Normal: Condição:  Chave Primária (PK) composta por mais de uma coluna. Todas as colunas que não fazem parte da PK dependem de todas as colunas que compõem a PK. A tabela a seguir NÃO está na 2FN: Passando para a 2FN: D F IRREDUTÍVEL À ESQUERDA 10/02/2005 1800 Analista Sr Claudio 1003 12 05/01/2005 1200 Analista Pl Daniela 1004 11 02/01/2005 1800 Analista Sr Antonio 1001 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc CodProj ProjFunc 10/02/2005 1003 12 05/01/2005 1004 11 02/01/2005 1001 11 DtInicio CodFunc CodProj ProjFunc 1800 Analista Sr Claudio 1003 1200 Analista Pl Daniela 1004 1800 Analista Sr Antonio 1001 SalFunc CargoFunc NomeFunc CodFunc Funcionario
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 3FN – Terceira Forma Normal: Não há dependências funcionais transitivas. Cada coluna não PK depende DIRETAMENTE da PK. A tabela a seguir NÃO está na 3FN: Passando para a 3FN: CodFunc    CargoFunc    SalFunc Dependência Funcional Transitiva D F TRANSITIVA 1800 Analista Sr Claudio 1003 1200 Analista Pl Daniela 1004 1800 Analista Sr Antonio 1001 SalFunc CargoFunc NomeFunc CodFunc Funcionario Analista Sr Claudio 1003 Analista Pl Daniela 1004 Analista Sr Antonio 1001 CargoFunc NomeFunc CodFunc Funcionario 1200 Analista Pl 1800 Analista Sr SalFunc CargoFunc CargoSalario
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO FNBC – F N Boyce e Codd: Condição:  Aplica-se a FNBC quando: D F NÃO TRIVIAL E IRRED. À ESQ.  ,[object Object],[object Object],[object Object],Vamos assumir que um professor está associado a mais de uma escola e uma sala. Aluno(NomeAluno,EndAluno,NomeEscola,NrSala,NomeProf) Exemplo: Chaves Candidatas: NomeAluno + EndAluno NomeAluno + NrSala NomeAluno + NomeProf ,[object Object],[object Object],[object Object],[object Object],Aplicando a FNBC: A tabela Aluno será dividida em duas tabelas: uma que contêm todos os atributos que descrevem o  aluno  e outra que contêm os atributos que designam um  professor  em uma determinada escola e número de sala. Aluno(NomeAluno,EndAluno,NomeEscola,NrSala) Professor(NomeEscola,NrSala,NomeProf)
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO FNBC – F N Boyce e Codd: Condição:  Aplica-se a FNBC quando: D F NÃO TRIVIAL E IRRED. À ESQ.  ,[object Object],[object Object],[object Object],Aplicando a FNBC: A tabela  Emprestimo  será dividida em duas tabelas: uma que contém   todos os atributos que descrevem o  Emprestimo  e outra que contém os atributos   do  Devedor   (ou cliente_emprestimo). Claudia Alves C3 Beatriz Batista C2 Antonio Alves C1 NomeCli CodCli Cliente Campinas A3 Botucatu A2 Amparo A1 NomeAge CodAge Agencia 1000.00 E1 C2 A1 1500.00 E3 C3 A2 1500.00 E3 C1 A2 2000.00 E2 C2 A1 Valor NrEmp CodCli CodAge Emprestimo Valor NrEmp CodAge 1000.00 E1 A1 1500.00 E3 A2 2000.00 E2 A1 Emprestimo E3 C1 E3 C3 E2 C2 E1 C2 NrEmp CodAge Devedor
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 4FN – Quarta Forma Normal: Uma tabela não deve possuir mais de uma D F Multivalorada. Passando para a 4FN: A tabela a seguir NÃO está na 4FN: D F MULTIVALORADA CodProj    CodFunc CodProj    CodEquip A20 1001 12 A10 1001 12 A20 1002 11 A20 1001 11 A10 1002 11 A10 1001 11 CodEquip CodFunc CodProj ProjFuncEquip 1001 12 1002 11 1001 11 CodFunc CodProj ProjFunc A20 12 A10 12 A20 11 A10 11 CodEquip CodProj ProjEquip
MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 5FN – Quinta Forma Normal: Condição:  Relacionamentos multiplos (ternários ... n-ários). NÃO está na 5FN: Está na 5FN: A tabela está na 5FN quando o seu conteúdo NÃO puder ser reconstruído Através da junção das tabelas secundárias. 1º passo: Decompor a tabela através da operação de  projeção . 2º passo: Reconstruir a tabela através da  junção . 2 1001 10 2 1001 20 2 1002 10 1 1001 10 Req Ped Mat MatPedReq 1001 20 1002 10 1001 10 Ped Mat MatPed 2 1001 2 1002 1 1001 Req Ped PedReq 2 20 2 10 1 10 Req Mat MatReq

Mais conteúdo relacionado

Mais procurados

Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo RelacionalJoel Santos
 
[Certificacao ] normalizacao de dados e as formas normais
[Certificacao ]  normalizacao de dados e as formas normais[Certificacao ]  normalizacao de dados e as formas normais
[Certificacao ] normalizacao de dados e as formas normaisSandro Freitas
 
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
 
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Leinylson Fontinele
 
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)Leinylson Fontinele
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Leinylson Fontinele
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoLeinylson Fontinele
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosLeinylson Fontinele
 
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefBD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefRodrigo Kiyoshi Saito
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13diogoa21
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...Leinylson Fontinele
 
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)Leinylson Fontinele
 
Fundamentos de banco de dados 01 indrodução
Fundamentos de banco de dados   01 indroduçãoFundamentos de banco de dados   01 indrodução
Fundamentos de banco de dados 01 indroduçãoRafael Pinheiro
 
Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Miguel Aquino
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dadosmgoberto
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)Janynne Gomes
 
Normalização básica
Normalização básicaNormalização básica
Normalização básicaNadia Habu
 

Mais procurados (20)

Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
[Certificacao ] normalizacao de dados e as formas normais
[Certificacao ]  normalizacao de dados e as formas normais[Certificacao ]  normalizacao de dados e as formas normais
[Certificacao ] normalizacao de dados e as formas normais
 
Banco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalBanco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - Relacional
 
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
 
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)
Banco de Dados II Aula Dinâmica 1 (Perguntas e Respostas)
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - Apresentação
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
 
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefBD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13
 
Apostila modelagem de banco de dados
Apostila modelagem de banco de dadosApostila modelagem de banco de dados
Apostila modelagem de banco de dados
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
 
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)
Estrutura de Dados Aula 13 - Árvores (conceito, elementos, tipos e utilizações)
 
Fundamentos de banco de dados 01 indrodução
Fundamentos de banco de dados   01 indroduçãoFundamentos de banco de dados   01 indrodução
Fundamentos de banco de dados 01 indrodução
 
Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]Modelo conceitual fisico_logico_er[1]
Modelo conceitual fisico_logico_er[1]
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
 
Banco De Dados
Banco De DadosBanco De Dados
Banco De Dados
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
 
Normalização básica
Normalização básicaNormalização básica
Normalização básica
 

Destaque

Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Ricardo Terra
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Normalização em Banco de Dados
Normalização em Banco de DadosNormalização em Banco de Dados
Normalização em Banco de DadosDiolene Sampaio
 
Normalização e conflito
Normalização e conflitoNormalização e conflito
Normalização e conflitotontinhasilva
 
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Gustavo Zimmermann
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalizaçãoTicianne Darin
 
Sistema Português de Qualidade
Sistema Português de QualidadeSistema Português de Qualidade
Sistema Português de QualidadeI.Braz Slideshares
 
Timeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosTimeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosMarylly Silva
 
Normalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normalNormalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normalvitorleyva
 
B2B business to business
B2B business to businessB2B business to business
B2B business to businessCamila Nunes
 
Qualidade, conceitos e definições
Qualidade, conceitos e definiçõesQualidade, conceitos e definições
Qualidade, conceitos e definiçõesI.Braz Slideshares
 
Qualidade, Segurança e Ambiente
Qualidade, Segurança e AmbienteQualidade, Segurança e Ambiente
Qualidade, Segurança e AmbienteAna Helena
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamentoCarlos Melo
 
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)Gustavo Zimmermann
 
Bancode dados modelagem conceitual
Bancode dados modelagem conceitualBancode dados modelagem conceitual
Bancode dados modelagem conceitualMario Sergio
 

Destaque (20)

Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Normalização em Banco de Dados
Normalização em Banco de DadosNormalização em Banco de Dados
Normalização em Banco de Dados
 
Normalização e conflito
Normalização e conflitoNormalização e conflito
Normalização e conflito
 
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalização
 
Sistema Português de Qualidade
Sistema Português de QualidadeSistema Português de Qualidade
Sistema Português de Qualidade
 
Apresentação Modelagem de negócios
Apresentação Modelagem de negóciosApresentação Modelagem de negócios
Apresentação Modelagem de negócios
 
Timeline Evolução do Banco de Dados
Timeline Evolução do Banco de DadosTimeline Evolução do Banco de Dados
Timeline Evolução do Banco de Dados
 
Normalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normalNormalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normal
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
B2B business to business
B2B business to businessB2B business to business
B2B business to business
 
Qualidade, conceitos e definições
Qualidade, conceitos e definiçõesQualidade, conceitos e definições
Qualidade, conceitos e definições
 
Qualidade, Segurança e Ambiente
Qualidade, Segurança e AmbienteQualidade, Segurança e Ambiente
Qualidade, Segurança e Ambiente
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamento
 
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)
Banco de Dados II: Dinâmica de Perguntas e Respostas (aula 4)
 
Bancode dados modelagem conceitual
Bancode dados modelagem conceitualBancode dados modelagem conceitual
Bancode dados modelagem conceitual
 
O conformismo
O conformismoO conformismo
O conformismo
 
Modelos de Banco de dados e SGBDS
Modelos de Banco de dados e SGBDSModelos de Banco de dados e SGBDS
Modelos de Banco de dados e SGBDS
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 

Semelhante a Normalização - Alexandruk

Normalização em Banco de Dados Relacionais
Normalização em Banco de Dados RelacionaisNormalização em Banco de Dados Relacionais
Normalização em Banco de Dados Relacionaisrobertaifbaiano
 
(4 - Normalização) (1).pdf
(4 - Normalização) (1).pdf(4 - Normalização) (1).pdf
(4 - Normalização) (1).pdfSaraR49
 
Bdm aula 6 - normalização - ticianne darin
Bdm   aula 6 - normalização - ticianne darinBdm   aula 6 - normalização - ticianne darin
Bdm aula 6 - normalização - ticianne darinTicianne Darin
 
Normalização Banco de Dados
Normalização Banco de DadosNormalização Banco de Dados
Normalização Banco de DadosKablo Skater Rail
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalizaçãoLuan Caldas
 
Apostila+[1]+clp+parte+3
Apostila+[1]+clp+parte+3Apostila+[1]+clp+parte+3
Apostila+[1]+clp+parte+3Andre Lima
 
Introdução a Banco de Dados (Parte 2)
Introdução a Banco de Dados (Parte 2)Introdução a Banco de Dados (Parte 2)
Introdução a Banco de Dados (Parte 2)Mario Sergio
 

Semelhante a Normalização - Alexandruk (10)

Teorica 10
Teorica 10Teorica 10
Teorica 10
 
Normalização em Banco de Dados Relacionais
Normalização em Banco de Dados RelacionaisNormalização em Banco de Dados Relacionais
Normalização em Banco de Dados Relacionais
 
(4 - Normalização) (1).pdf
(4 - Normalização) (1).pdf(4 - Normalização) (1).pdf
(4 - Normalização) (1).pdf
 
Bdm aula 6 - normalização - ticianne darin
Bdm   aula 6 - normalização - ticianne darinBdm   aula 6 - normalização - ticianne darin
Bdm aula 6 - normalização - ticianne darin
 
Normalização Banco de Dados
Normalização Banco de DadosNormalização Banco de Dados
Normalização Banco de Dados
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalização
 
Apostila+[1]+clp+parte+3
Apostila+[1]+clp+parte+3Apostila+[1]+clp+parte+3
Apostila+[1]+clp+parte+3
 
Introdução a Banco de Dados (Parte 2)
Introdução a Banco de Dados (Parte 2)Introdução a Banco de Dados (Parte 2)
Introdução a Banco de Dados (Parte 2)
 
Linguagens clp
Linguagens clpLinguagens clp
Linguagens clp
 
Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)
 

Normalização - Alexandruk

  • 1. MODELAGEM EM BANCO DE DADOS NORMALIZAÇÃO Prof. Marcos Alexandruk UNINOVE
  • 2.
  • 3.
  • 4.
  • 5. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK CHAVES Chave candidata : atributo ou conjunto de atributos que são únicos para cada registro. Cada tabela pode ter uma ou várias chaves deste tipo. Exemplos: CODIGO, CPF, RG
  • 6. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK CHAVES Chave primária : Escolhida entre as chaves candidatas para ser o identificador principal da tabela. (PK – Primary Key)
  • 7. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK CHAVES Chaves alternativas : São as chaves candidatas que não foram definidas como chaves primárias.
  • 8. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK CHAVES Chave estrangeira : Atributo ou conjunto de atributos que faz a ligação com a chave primária de outra tabela. (FK – Foreign Key)
  • 9. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK DEPENDÊNCIA FUNCIONAL (DF) Sempre que um atributo X identifica um atributo Y há entre eles uma dependência funcional . X é o determinante e Y é o dependente. Representação: X  Y (lê-se: X determina Y ou Y é dependente de X) cidade  estado (estado é dependente de cidade) estado  país (país é dependente de estado)
  • 10. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK TRIVIALIDADE A dependência funcional trivial indica que um determinante com mais de um atributo pode determinar seus próprios membros quando isolados. {banco,agencia}  banco {banco,agencia}  agencia A dependência funcional não trivial * indica que um determinante identifica outro atributo qualquer. {banco,agencia}  cidade (cidade não faz parte do determinante) * Esta DF é a que nos interessa no processo de normalização.
  • 11. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK TRANSITIVIDADE Se um atributo X determina Y e se Y determina Z, Podemos dizer que X determina Z de forma transitiva , Isto é, existe uma dependência funcional transitiva X para Z. cidade  estado estado  país cidade  país (cidade determina país de forma transitiva)
  • 12. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK D F IRREDUTÍVEL À ESQUERDA O lado esquerdo de uma dependência funcional é irredutível à esquerda quando o determinante está na sua forma mínima , não é possível reduzir a quantidade de atributos determinantes sem perder a dependência funcional . {cidade,estado}  país (Não está na forma irredutível à esquerda*) * podemos ter somente o estado como determinante estado  país (Está na forma irredutível à esquerda) NOTA: Nem sempre estar na forma irredutível à esquerda significa possuir um determinante com apenas um atributo!
  • 13. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO © PROF. MARCOS ALEXANDRUK DEPENDÊNCIA MULTIVALORADA O valor de um atributo determina um conjunto de valores de um outro atributo. {CPF}  {nome} (um nome para cada CPF) {CPF}  {dependente} (vários dependentes para cada CPF) Uma dependência multivalorada é representada por: X  Y (X multidetermina Y ou Y é multidependente de X)
  • 14.
  • 15.
  • 16. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 1FN – Primeira Forma Normal: Os atributos da tabela não contêm grupos de repetição (tabelas aninhadas). Passando para a 1FN: A tabela a seguir NÃO está na 1FN: D F MULTIVALORADA 10/02/2005 1800 Analista Sr Claudio 1003 Beta 12 05/01/2005 1200 Analista Pl Daniela 1004 02/01/2005 1800 Analista Sr Antonio 1001 Alfa 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc DescProj CodProj Projeto 10/02/2005 1800 Analista Sr Claudio 1003 12 05/01/2005 1200 Analista Pl Daniela 1004 11 02/01/2005 1800 Analista Sr Antonio 1001 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc CodProj ProjFunc Beta 12 Alfa 11 DescProj CodProj Projeto
  • 17. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 2FN – Segunda Forma Normal: Condição: Chave Primária (PK) composta por mais de uma coluna. Todas as colunas que não fazem parte da PK dependem de todas as colunas que compõem a PK. A tabela a seguir NÃO está na 2FN: Passando para a 2FN: D F IRREDUTÍVEL À ESQUERDA 10/02/2005 1800 Analista Sr Claudio 1003 12 05/01/2005 1200 Analista Pl Daniela 1004 11 02/01/2005 1800 Analista Sr Antonio 1001 11 DtInicio SalFunc CargoFunc NomeFunc CodFunc CodProj ProjFunc 10/02/2005 1003 12 05/01/2005 1004 11 02/01/2005 1001 11 DtInicio CodFunc CodProj ProjFunc 1800 Analista Sr Claudio 1003 1200 Analista Pl Daniela 1004 1800 Analista Sr Antonio 1001 SalFunc CargoFunc NomeFunc CodFunc Funcionario
  • 18. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 3FN – Terceira Forma Normal: Não há dependências funcionais transitivas. Cada coluna não PK depende DIRETAMENTE da PK. A tabela a seguir NÃO está na 3FN: Passando para a 3FN: CodFunc  CargoFunc  SalFunc Dependência Funcional Transitiva D F TRANSITIVA 1800 Analista Sr Claudio 1003 1200 Analista Pl Daniela 1004 1800 Analista Sr Antonio 1001 SalFunc CargoFunc NomeFunc CodFunc Funcionario Analista Sr Claudio 1003 Analista Pl Daniela 1004 Analista Sr Antonio 1001 CargoFunc NomeFunc CodFunc Funcionario 1200 Analista Pl 1800 Analista Sr SalFunc CargoFunc CargoSalario
  • 19.
  • 20.
  • 21. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 4FN – Quarta Forma Normal: Uma tabela não deve possuir mais de uma D F Multivalorada. Passando para a 4FN: A tabela a seguir NÃO está na 4FN: D F MULTIVALORADA CodProj  CodFunc CodProj  CodEquip A20 1001 12 A10 1001 12 A20 1002 11 A20 1001 11 A10 1002 11 A10 1001 11 CodEquip CodFunc CodProj ProjFuncEquip 1001 12 1002 11 1001 11 CodFunc CodProj ProjFunc A20 12 A10 12 A20 11 A10 11 CodEquip CodProj ProjEquip
  • 22. MODELAGEM EM BANCO DE DADOS - NORMALIZAÇÃO 5FN – Quinta Forma Normal: Condição: Relacionamentos multiplos (ternários ... n-ários). NÃO está na 5FN: Está na 5FN: A tabela está na 5FN quando o seu conteúdo NÃO puder ser reconstruído Através da junção das tabelas secundárias. 1º passo: Decompor a tabela através da operação de projeção . 2º passo: Reconstruir a tabela através da junção . 2 1001 10 2 1001 20 2 1002 10 1 1001 10 Req Ped Mat MatPedReq 1001 20 1002 10 1001 10 Ped Mat MatPed 2 1001 2 1002 1 1001 Req Ped PedReq 2 20 2 10 1 10 Req Mat MatReq