OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.



Documentos relacionados
OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

Banco de Dados Lista de Exercícios 01

Dependência funcional

Modelo Relacional. Modelo Relacional. Modelo Relacional. Banco de Dados. Modelo Relacional. Modelo Relacional

UNIVERSIDADE FEDERAL FLUMINENSE PÓLO UNIVERSITÁRIO DE RIO DAS OSTRAS FACULDADE FEDERAL DE RIO DAS OSTRAS CURSO DE CIÊNCIA DA COMPUTAÇÃO

SISTEMA GERENCIADOR DE BANCO DE DADOS

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

- O atributo Cursos contém valores não atómicos!!!

CICLO DE VIDA DE UM BD

Normalização de Esquemas de Banco de Dados. Prof. Carlos Bazilio

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

Databases. Dependências Funcionais

Exemplo Seja a relação Inventário (peça, departamento, cor) com. Está na FNBC (não existem dependências funcionais). Mas, existem anomalias:

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

INTRODUÇÃO. Enfoque abstrato. Enfoque Intermediário

PROJETO LÓGICO. Passos para transformação ER Relacional: 1) Tradução inicial de Entidades e seus Atributos;

O modelo de dados relacional e as restrições de um banco de dados relacional

Tecnologias e Linguagens para Banco de Dados I. Expressão do Relacionamento. Expressão do Relacionamento

Introdução às Bases de Dados

MODELO DE DADOS. 1. Modelo de Dados. É uma imagem gráfica de toda a base de informações necessárias para um determinado empreendimento.

Introdução às Bases de Dados

Modelo de Dados. Modelos Conceituais

MODELAGEM DE DADOS - NORMALIZAÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Memória de aula Semanas 15 e 16

Modelo de Dados. Modelo para organização dos dados de um BD

Disciplina: Unidade III: Prof.: Período:

1- Identifique para cada questão abaixo, se o enunciado se refere a View, Stored Procedures, Trigger ou Function. Apenas um por questão.

BANCO DE DADOS I AULA 6. Wlllamys Araújo willamysaraujo7@gmail.com

MODELO DE DADOS. É uma imagem gráfica de toda a base de informações necessárias para um determinado empreendimento.

Modelo de Entidade e Relacionamento (MER) - Parte 07

1.3. SGBD Sistemas de Gestão de Base de Dados

Profa. Daniela Barreiro Claro

Diagrama de Entidade e Relacionamento

Banco de Dados - Senado

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Conceitos de Banco de Dados

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados

Desenvolvimento de uma base de dados. Relação. Modelo lógico: SGBD relacional

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

Modelo Relacional. Aécio Costa

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

Projeto e Implementação

Fundamentos de Bancos de Dados Prova 3

Roteiro 3 Modelagem relacional

MODELAGEM DE DADOS. Unidade II Arquiteturas do SGBD

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

BDII SQL Junção Revisão 8

Integridade dos Dados

Prof. Alexandre Unterstell Banco de Dados I

Processamento e Otimização de Consultas

Persistência e Banco de Dados em Jogos Digitais

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:

TOTVS BA Guia de Customização Linha Logix

Gestão de Tecnologia da Informação

Diagrama de Entidade Associação ou Relacionamento

Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas. Campus Alegrete. Banco de Dados I. Cristhiano Bossardi de Vasconcellos.

INF1383 -Bancos de Dados

Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

Refinamento de Esquemas e Formas Normais

Modelo Relacional. Modelo Relacional. Conceitos Gerais: Relação

Lógica e Bases de Dados. Prof. Elaine Faria e Hiran Nonato Programação Lógica UFU 2012

Banco de Dados Básico

Dependências Multi-Valor, 4 a Forma Normal

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Bases de Dados. Parte III: O Modelo Relacional

Introdução à Banco de Dados

ATIVIDADE 11. Questão 1 Para as relações apresentadas a seguir, indique a forma normal em que cada uma delas se encontra.

Introdução Banco de Dados

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Prof.: Clayton Maciel Costa

07/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

Núcleo de Pós Graduação Pitágoras

MODELO RELACIONAL - UFMA

Módulo 4: Gerenciamento de Dados

Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )

Exercícios de Lógica Exercícios de Fixação 08

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

Principais Conceitos. Modelo Relacional representa o banco de dados como uma coleção de relações Tupla Atributos Relação Domínio

MC536 Bancos de Dados: Teoria e Prática

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

Microsoft Access Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento

BANCO DE DADOS I AULA 3. Willamys Araújo

1. Introdução 2. Conceitos 3. Gerenciador de Banco de Dados (SGBD) 3.1. Arquitetura ANSI/SPARC Regras básicas 3.3.

f. Vocês podem selecionar todos os campos indicando-os, ou seja, sem usar * (boa prática) g. Muito relevante na manutenção de BD e de aplicações.

Modelo Relacional. 2. Modelo Relacional (Lógico)

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Disciplina de Banco de Dados Parte V

Depois de obtido o diagrama E/A há que estabelecer o esquema relacional correspondente.

AMBIENTE DE PROGRAMAÇÃO PYTHON

11/08/2008. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

Banco de Dados. Modelo Relacional. Prof. Enzo Seraphim

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro.

Engenharia de Software. Diagramas de Entidade- Relacionamento (E-R) Estruturação de dados

Modelo Entidade-Relacionamento

Transcrição:

BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br

OBJETIVOS Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs. Formas Normais: Primeira Forma Normal; Segunda Forma Normal; Terceira Forma Normal. Outras Formas Normais.

NORMALIZAÇÃO DE PROJETOS DE BD Na prática, a normalização é realizada para obter projetos de alta qualidade e atender a propriedades que facilitem a execução de operações de consulta No entanto, os projetistas de bancos de dados, em geral, não precisam normalizar na maior forma normal possível. Pode-se lançar mão da Desnormalização Processo de armazenar junções de relações que estejam em forma normal superior. Servem como uma relação base para facilitar operações com outras relações que estão numa forma normal inferior.

OUTRAS FORMAS NORMAIS Originalmente, Edgar Codd definiu três formas normais: 1FN, 2FN e 3FN (Primeira, Segunda e Terceira Forma Normal), Mas, hoje existem outras: Forma Normal de Boyce-Codd, Quarta e Quinta Forma Normal Entretanto, alguns autores sugerem que aplicando as três formas normais básicas definidas por Codd, o projeto do BD já estará livre de redundâncias e inconsistências.

FORMA NORMAL DE BOYCE-CODD (FNBC) Uma relação está na FNBC se: Estiver na 2FN e Todos os seus atributos são dependentes não-transitivos de uma chave candidata A diferença para 3FN é a inexistência da possibilidade de A ser parte da chave. Note-se que se: Se uma tabela estiver na FNBC também estará na 3FN, mas não o inverso.

FORMA NORMAL DE BOYCE-CODD (FNBC) A FNBC é considerada uma forma mais rígida da 3FN, pois trata de um tipo de atributo não considerado em outras formas normais a chave candidata. Portanto, é adequado pensar em FNBC quando: Uma tabela tem várias chaves candidatas Chaves candidatas são compostas Chaves candidatas sobrepõem-se

FORMA NORMAL DE BOYCE-CODD (FNBC) Exemplo: nmaluno nmcurso nmdocente João Banco de Dados Edgar Codd Maria Programação I Naveen Gupta José Banco de Dados Edgar Codd Maria Banco de Dados Edgar Codd João Redes de Computadores Douglas Comer José Redes de Computadores Douglas Comer {nmaluno, nmcurso} nmdocente nmdocente nmcurso Não há DF transitiva, mas, há uma DF em que atributos da chave candidata {nmaluno, nmcurso} não é o determinante!

FORMA NORMAL DE BOYCE-CODD (FNBC) Algumas anomalias podem ser percebidas: Por exemplo: Como se dá a inserção de um novo docente na tabela anterior? Se Naveen Gupta deixa de ser professor é provável que qualquer menção a Programação I seja perdida.

FORMA NORMAL DE BOYCE-CODD (FNBC) A solução é prover a decomposição tendo como base as DFs: Tabela 1 {nmdocente, nmcurso} Tabela 2 {nmaluno, nmcurso}

FORMA NORMAL DE BOYCE-CODD (FNBC) No entanto, cuidado! É possível que se encontre soluções que não preservam todas as DFs nas relações decompostas. Por exemplo: {nmaluno, nmdocente} e {nmaluno, nmcurso} {nmcurso, nmdocente} e {nmcurso, nmaluno} {nmdocente, nmcurso} e {nmdocente, nmaluno} Todas as três decomposições perdem a primeira DF! Entretanto, das três, apenas a terceira decomposição não gera tuplas inconsistentes após um join!

QUARTA FORMA NORMAL (4FN) Uma relação está na 4FN se não ocorrerem dependências multivaloradas nesta tabela Dependência Multivalorada Um atributo B é multidependente de outro atributo A se um valor de A é associado a uma coleção de valores de B. Nesse caso, diz-se que B é multidepedente de A (AB)

QUARTA FORMA NORMAL (4FN) vendedorid clienteid nmcliente nmparente parentesco vendedorid {clienteid, nmcliente} vendedorid {nmparente, grauparentesco} Existe uma intrínseca incerteza em como manter as linhas. Várias abordagens são possíveis e diferentes programadores podem tomar diferentes caminhos!

QUARTA FORMA NORMAL (4FN) Para que uma tabela atinja a 4FN, a abordagem deve seguir: Para cada grupo de repetição separado, gera-se uma nova relação correspondente contendo este grupo de repetição e a chave primária da relação original Determinar a chave primária da nova relação, a qual será a concatenação da chave primária da relação original com a chave para o grupo de repetição Vendedor {vendedorid, nmvendedor} Vendedor_Cliente {vendedorid, clienteid, nmcliente} Vendedor_Parente {vendedorid, nmparente, parentesco)

QUARTA FORMA NORMAL (4FN) Se uma relação está na 4FN então necessariamente está na FNBC É uma forma normal geralmente tratada como uma abordagem excepcional (pois, depende de um projeto top-down)

QUINTA FORMA NORMAL (5FN) É também conhecida como Forma Normal de Projeção /Junção FNPJ Definições: X Uma relação não estará na 5FN se for possível construir tuplas inconsistentes a partir de tuplas menores Uma relação está na 5FN se para toda a dependência que se verifique na tabela, esta dependência é baseada em chaves Uma relação está na 5FN se estiver na 4NF e as relações não puderem ser decompostas em relações mais simples sem perda de informação

QUINTA FORMA NORMAL (5FN) Exemplo: nmvendedor nmempresa Produto João Samsumg Galaxy Tab João Apple Ipad Nunca deveria ser possível que: João venda Ipads da Samsumg João venda Galaxy Tabs da Apple Então, há combinações menores que podem ser inconsistentes!

QUINTA FORMA NORMAL (5FN) Podemos reconstruir todos os fatos verdadeiros em 3 tabelas em vez de 1: nmvendedor nmempresa João Samsumg João Apple nmvendedor Produto João Galaxy Tab João Ipad nmempresa Produto Samsumg Galaxy Tab Apple Ipad

QUINTA FORMA NORMAL (5FN) Algumas conclusões: Os fatos tendem a ser registrados várias vezes em uma tabela que não está na 5FN. O tamanho de uma tabela que fere a 5FN aumenta em progressão geométrica, enquanto as tabelas normalizadas crescem em progressão aritmética. Logo, é mais fácil escrever as regras de negócio a partir da 5FN

BIBLIOGRAFIA ELMASRI, R. E.; NAVATHE S. Sistemas de Banco de Dados. 4ª Ed., São Paulo: Pearson Prentice Hall, 2005. Capítulo 10.

EXERCÍCIO DE FIXAÇÃO Considere a seguinte tabela não normalizada. Proponha um conjunto de tabelas que esteja na 3FN. Notas_Fiscais (Num. NF, Série, Data emissão, Cod. do Cliente, Nome do cliente, Endereço do cliente, CGC do cliente, Relação das mercadorias vendidas e Total Geral da Nota) * (considere que para cada mercadoria temos: Código da Mercadoria, Descrição da Mercadoria, Quantidade vendida, Preço de venda e Total da venda desta mercadoria)