Profa. Ana Karina Barbosa Abril/2008

Slides:



Advertisements
Apresentações semelhantes
Modelo Relacional e Transformação DER x Relacional
Advertisements

Mapeamento Modelo ER – Modelo Relacional
Um pouco mais de cardinalidade e Relacionamentos
Abordagem Entidade Relacionamento
Laboratório WEB Professora: Viviane de Oliveira Souza Gerardi.
Banco de Dados I I Banco de Dados - Conceitos e Definições
Modelo Relacional Renata Viegas.
O Modelo E-R Definição: Características
Prof.: Bruno Rafael de Oliveira Rodrigues
SISTEMAS DE INFORMAÇÃO
Sistemas de Informação Redes de Computadores
SISTEMAS DE INFORMAÇÃO
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Mapeamento ER-Relacional
Sistema Gerenciador de Banco de Dados SGBD
Universidade Federal de Santa Catarina
Banco de Dados – Modelo Relacional Universidade Federal de Santa Catarina Banco de Dados Mapeamento ER- Relacional (Material adaptado das profs. Daniela.
UML NO PROJETO LÓGICO DE BANCO DE DADOS: 1ª PARTE
SCC Bancos de Dados e Suas Aplicações
Projeto Lógico Transformação ER para o Modelo Relacional (nível lógico) Baseado em Regras São aplicáveis a maioria dos casos 1 esquema ER pode gerar N.
Org. e Projeto de Banco de Dados
Prof. Alexander Roberto Valdameri
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
Banco de Dados Aplicado ao Desenvolvimento de Software
Modelo Entidade/Relação
Tecnologias de Linguagens para Banco de Dados I
Ricardo de Oliveira Cavalcanti roc3[at]cin.ufpe.br
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante
Normalização Disciplina: Banco de dados II.
Prof. Alfredo Parteli Gomes
SQL Server 2012 Introdução a Modelagem de Dados
Introdução a Banco de Dados com exercícios de aplicação
BANCO DE DADOS APLICADO AO DESENVOLVIMENTO DE SOFTWARE
Banco de Dados Aplicado ao Desenvolvimento de Software - BDD
Bancos de Dados Projeto de BD
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Profª Daniela TLBD.
Projeto de Banco de Dados
REGRAS DE PRODUÇÃO DO MODELO LÓGICO
1-1 Copyright © Oracle Corporation, All rights reserved. Administrando Objetos de Esquema Este capítulo abordará os seguintes tópicos: Visão geral.
Objetivos Apresentar de forma breve a Metodologia de Modelagem Orientada a Objetos (OMT). A partir de um modelo de objetos de um sistema de informação.
Banco de Dados Aplicado ao Desenvolvimento de Software
BANCO DE DADOS Aula 3 Josino Rodrigues Neto© Fundamentos em Banco de Dados.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
TECNOLOGIAS E LINGUAGENS PARA BANCO DE DADOS I
Transformação E-R para Relacional
1 24/4/ :29 FMU – 1. Semestre – Tecnologia – Analise e Desenvolvimento de Sistemas Professor: Eduardo Silvestri Aluno:Clóvis de Oliveira- RA
Projeto de BD Análise de Requisitos Projeto Conceitual Projeto Lógico
Objetos em Bancos de Dados Relacionais Alcides Calsavara.
Profa. Ana Karina Barbosa Abril/2008
Modelo Relacional Marcelo Mendes Manaus – 2015.
Banco de Dados Transformação er - relacional
Aula 3 – Conceitos de banco de dados relacionais
Projeto de Banco de Dados
4 Projeto de Banco de Dados Carlos Alberto Heuser.
Projeto de Banco de Dados Ceça Moraes Dezembro/09.
Salário, Sexo, R$200,00, Veículos, Idade, Marco Antônio, Masculino, R$600,00, Funcionário, Marca, 18 anos, Livros, Motoristas, Maria do Carmo, Endereço,
Modelagem de Dados Consiste em mapear o mundo real do sistema em um modelo que irá representar a realidade e o relacionamento existente entre os dados.
Modelo Relacional, Chaves e Relacionamentos
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Modelo relacional Fundamentos de Banco de Dados
Modelagem Entidade-Relacionamento (MER)
Banco de Dados I 4P/SI – 2010/02 Prof. Carlos Alberto Seixas.
Professor: reno nooblath
Programação para Internet Aula 10 Introdução (Características do BD Relacional e Implementação)
Modelagem de Dados Aula 4. 2 Implementação de Entidades Não é aconselhável simplesmente transcrever os nomes dos atributos para nomes de colunas. Nomes.
Normalização.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
Modelagem de Dados Aula 3.
Transcrição da apresentação:

Profa. Ana Karina Barbosa Abril/2008 Banco de Dados Parte 4 Profa. Ana Karina Barbosa Abril/2008

Mapeamento E-R / Relacional Modelo Conceitual Modelo Lógico

Mapeamento E-R / Relacional Estas abordagens propõem modelar os dados em diferentes níveis de abstração Abordagem E-R (Modelo Conceitual) Independente do SGBD considerado Abordagem Relacional (Modelo Lógico) Modela os dados a nível de SGBD relacional Um esquema relacional pode ser facilmente obtido a partir de um esquema conceitual E-R Existem algumas regras para realização desta tarefa que foram projetadas com dois objetivos: Boa performance Desenvolvimento simplificado

Mapeamento E-R/Relacional Implementação de entidades Para cada entidade no esquema E-R, criar uma tabela correspondente. Cada atributo da entidade define uma coluna desta tabela. Os atributos identificadores correspondem às colunas que compõem a chave primária da tabela Código Endereço PESSOA Data nascimento Nome (0,1) Esquema relacional simplificado correspondente: Pessoa (CodPessoa, Nome, Endereco, DataNasc)

Mapeamento E-R/Relacional Implementação de entidades Esquema Relacional completo Especificando a tabela Pessoa CAMPO TIPO NOT NULL DESCRIÇÂO Codigo Integer Not Null Chave Primária Nome Varchar(20) Nome do pessoa Endereço Varchar(50) Endereço da pessoa DataNasc Date Null Data de Nascimento

Mapeamento E-R/Relacional Nomes de Atributos e Nomes de Colunas Não é aconselhável transcrever diretamente os nomes dos atributos para nomes de colunas. Nomes de colunas são referenciados em programas, por isso: Devem ser curtos. Não podem conter brancos. A recomendação é que se use sempre a mesma abreviatura em todo o Banco de Dados.

Mapeamento E-R/Relacional Implementando Relacionamentos (1:1) Identificar as tabelas das entidades participando do relacionamento R. Escolher uma das tabelas e incluir como chave estrangeira, a chave primária da outra tabela. Incluir todos os atributos do relacionamento na relação escolhida. data regime Identificador Identificador 1 1 HOMEM CASAMENTO MULHER nome nome Mulher (IdentM, Nome, IdentH, Data, Regime) Homem (IdentH, Nome)

Mapeamento E-R/Relacional Implementando Relacionamentos (1:1) Especificação das tabelas Homem e Mulher CAMPO TIPO NOT NULL DESCRIÇÂO IdentH Integer Not Null Chave Primária. Nome Varchar (50) Nome do Homem CAMPO TIPO NOT NULL DESCRIÇÂO IdentM Integer Not Null Chave Primária. Nome Varchar(50) Nome da Mulher IdentH Null Iden. do marido. FK tabela Homem Data Date Data do casamento Regime Varchar (50) Regime: parcial, separação total, comunhão total

Mapeamento E-R/Relacional Implementando Relacionamentos (1:1) Tabela Cliente código código 1 0,1 CLIENTE TEM CARTÃO MAGNÉTICO Data Exp. nome CAMPO TIPO NOT NULL DESCRIÇÂO CodCliente Integer Not Null Chave Primária Nome Varchar (50) CodCartao Null Codigo do Cartao DataExp Date Data de Expiração

Mapeamento E-R/Relacional Implementando Relacionamentos (1:N) Identificar a tabela S que representa a entidade do lado N. Incluir como chave estrangeira a chave primária da tabela que representa a entidade do lado 1. Incluir todos os atributos do relacionamento em S. Num parcelas Taxa juros Id codigo 1 N FINANCEIRA FINANCIA VENDA nome data Financeira (Codigo, Nome) Venda (Id, data, CodFinan, NumParcelas, Txjuros)

Mapeamento E-R/Relacional Relacionamento com Entidade Fraca Cria-se uma tabela para a entidade fraca e inclui os seus atributos como campos. Acrescenta na tabela o identificador da entidade “forte”. A chave primária da tabela será o identificador da entidade “fraca” + o identificador da entidade “forte”. Numero Sequencia código 1 N EMPREGADO DEPENDENTE tem nome nome

Mapeamento E-R/Relacional Entidade Fraca Especificação da Tabela Dependente CAMPO TIPO NOT NULL DESCRIÇÂO CodEmp Integer Not Null Chave Primária. FK da Tabela Empregado NumSeq Chave primária Nome Varchar (50) Nome do dependente

Mapeamento E-R/Relacional Implementando Relacionamentos (N:N) Criar uma nova tabela para representar relacionamento R. Incluir como chave estrangeira as chaves primárias das tabelas que participam em R, estas chaves combinadas formarão a chave primária da relação. Incluir também eventuais atributos de R. N N ENGE- NHEIRO ATUAÇÃO PROJETO codigo titulo código nome função Engenheiro (CodEng, Nome) Projeto (CodProj, Titulo) Atuação (CodEng, CodProj, Função)

Mapeamento E-R/Relacional Implementando Relacionamentos - Quando existir dois ou mais relacionamentos entre as mesmas entidades Utilizar as regras anteriores para cada relacionamento independente dos outros. trabalha Código N N ENGENHEIRO PROJETO Título coordena 1 1 Nome Código Engenheiro (CodEng, Nome) Projeto (CodProj, Titulo, CodCoordenador) Trabalha (CodEng, CodProj)

Mapeamento E-R/Relacional Implementando Relacionamentos - Auto-Relacionamento Utilizar as mesmas regras descritas anteriormente. supervisor Código 1 supervisão EMPREGADO Nome N supervisionado Empregado (CodEmp, Nome, CodSupervisor)

Mapeamento E-R/Relacional Implementando Relacionamentos - Auto-Relacionamento composta Código N contém PEÇA Nome N componente Peça (CodPeça, Nome) Contém(CodPecaComposta, CodPecaComponente)

Mapeamento E-R/Relacional Exercício 5 Fazer o Modelo Relacional correspondente ao Modelo Entidade-Relacionamento de um banco de dados de suporte a uma Biblioteca Escolar. Uma Biblioteca possui livros. Um livro está associado a um determinado tema. Para um mesmo tema pode-se ter vários livros. Um livro pode fazer referência a outros livros. Um livro está localizado em uma prateleira. Um aluno pode fazer empréstimo de vários livros. Um mesmo livro pode ser emprestado a vários alunos. Associado ao processo de empréstimo tem-se a data de locação, a data de retorno e a multa, caso o livro seja retornado com atraso. Dados Complementares: Livro: Código, título, editora Tema: Código, título, descrição Prateleira: Código, corredor Aluno: Matrícula, Nome, Data de Nascimento

Mapeamento E-R/Relacional Para cada relacionamento com grau maior que dois (n-ário, n>2): Criar uma nova tabela para representar o relacionamento n-ário R. Incluir como chaves estrangeiras as chaves primárias das tabelas que representam as entidades participantes. Incluir os eventuais atributos de R. A chave primária da nova tabela é normalmente a combinação das chaves estrangeiras.

Mapeamento E-R/Relacional Para cada relacionamento com grau maior que dois (n-ário, n>2): CIDADE DISTRI- BUIDOR código nome código nome N 1 DISTRI- BUIÇÃO Data início N PRODUTO código nome

Mapeamento E-R/Relacional Para cada relacionamento com grau maior que dois (n-ário, n>2): (cont.) Produto (CodProd, Nome) Cidade (CodCid, Nome) Distribuidor (CodDistr, Nome) Distribuição (CodPod, CodCid, CodDistr, DataInicio)

Mapeamento E-R/Relacional Para cada atributo multivalorado Criar uma nova tabela. Incluir nesta tabela um atributo correspondente a A. Incluir a chave primária R da tabela que tem A como atributo. A chave primária da nova tabela é a combinação de A e R. (1,N) CLIENTE código nome Telefones Cliente (CodCli, Nome) Telefone (CodCli, NumTelefone)

Mapeamento E-R / Relacional Implementação de generalização/especialização: Há três alternativas a considerar: Uso de uma única tabela para toda hierarquia de generalização/especialização. Uso de uma tabela para cada entidade. Uso de uma tabela para cada entidade especializada.

Mapeamento E-R / Relacional Uma tabela por hierarquia: Todas as tabelas referentes às especializações de uma entidade genérica são fundidas em uma única tabela Esta tabela terá: Chave primária correspondente ao identificador da entidade mais genérica. Uma coluna Tipo, que identifica que tipo de entidade especializada está sendo representada por cada linha da tabela. Uma coluna para cada atributo da entidade genérica. Colunas referentes aos relacionamentos dos quais participa a entidade genérica e que sejam implementados pela alternativa de adicionar colunas à tabela da entidade genérica.

Mapeamento E-R / Relacional Uma tabela por hierarquia: Esta tabela terá (Cont.): Uma coluna para cada atributo de cada entidade especializada (que devem ser definidas como opcionais, já que somente terão valores quando a linha for referente à entidade especializada em questão). Colunas referentes aos relacionamentos dos quais participa cada entidade especializada e que sejam implementados através da adição de colunas à tabela da entidade.

Mapeamento E-R / Relacional Uma tabela para cada entidade da hierarquia: Cria-se uma tabela para cada entidade que compõe a hierarquia. Acrescentar o atributo TIPO à tabela referente à entidade genérica. Inclui-se a chave primária da tabela correspondente à entidade genérica, em cada tabela correspondente a uma entidade especializada .

Mapeamento E-R / Relacional Uma tabela para cada entidade especializada: Cria-se uma tabela para cada entidade especializada que não possua outra especialização. Esta tabela contém tanto os dados da entidade especializada, quanto os de suas entidades genéricas. Esta alternativa pode ser utilizada quando a especialização for total.

Mapeamento E-R / Relacional Comparação entre as alternativas: Vantagem da implementação com tabela única: Todos os dados referentes a um ocorrência de entidade genérica, bem como os dados eferentes a ocorrência de sua especialização estão em uma única linha. A chave primária é armazenada uma única vez. Vantagem da implementação com uma tabela por entidade: As colunas opcionais que aparecem são aquelas referentes a atributos que podem ser vazios do ponto de vista da aplicação. O controle de colunas opcionais passa a ser feito pelo SGBD e não só pela aplicação como acontece na abordagem anterior utilizando o atributo TIPO.

Mapeamento E-R / Relacional Comparação entre as alternativas: Vantagem da implementação com uma tabela por entidade especializada: As colunas opcionais que aparecem são aquelas referentes a atributos que podem ser vazios do ponto de vista da aplicação. Não possui chaves primárias redundantes. A chave primária não é também chave estrangeira, como na solução anterior. OBS: O projetista deve ponderar os prós e contras de ambas soluções e optar por aquela que seja mais adequada ao problema.

Mapeamento E-R/Relacional Exercício 6 Fazer o Modelo Relacional correspondente ao modelo Entidade-Relacionamento do banco de dados de suporte a uma empresa de engenharia.

Mapeamento E-R/Relacional Exercício 7 Fazer o Modelo Relacional correspondente ao modelo Entidade-Relacionamento do banco de dados de suporte a realização de Congressos.