4 Projeto de Banco de Dados Carlos Alberto Heuser.

Slides:



Advertisements
Apresentações semelhantes
Um pouco mais de cardinalidade e Relacionamentos
Advertisements

Abordagem Entidade Relacionamento
Laboratório WEB Professora: Viviane de Oliveira Souza Gerardi.
Renata Viegas Extensões MER 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
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Modelagem Orientada a Objetos
Banco de Dados – Modelo Relacional Universidade Federal de Santa Catarina Banco de Dados Mapeamento ER- Relacional (Material adaptado das profs. Daniela.
SCC Bancos de Dados e Suas Aplicações
SCC Bancos de Dados e Suas Aplicações
Projeto de Bancos de Dados
Projeto de Banco de Dados Modelagem E-R
Prof. Alexander Roberto Valdameri
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
Tecnologias de Linguagens para Banco de Dados I
Modelagem de Dados Usando o Modelo Entidade-Relacionamento
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante
Prof. Alfredo Parteli Gomes
Projeto de Banco de Dados
SQL Server 2012 Introdução a Modelagem de Dados
BANCO DE DADOS APLICADO AO DESENVOLVIMENTO DE SOFTWARE
DIAGRAMA DE CLASSE Modelagem de Software
Professora: Sílvia C. Matos Soares
Diferenças entre DER e Engenharia de Informações
Bancos de Dados Projeto de BD
Modelo Entidade-Relacionamento
Prof.: Bruno Rafael de Oliveira Rodrigues
Campus de Caraguatatuba Aula 5: Modelo Entidade Relacionamento (2)
Profª Daniela TLBD.
Cardinalidade Expressa o numero de entidades as quais outra entidade pode estar associada via um conjunto de relacionamentos.
REGRAS DE PRODUÇÃO DO MODELO LÓGICO
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
Modelo de Dados Descrição formal de um estrutura de banco de dados.
Curso Técnico em Informática
Profa. Ana Karina Barbosa Abril/2008
Banco de Dados Aplicado ao Desenvolvimento de Software
Universidade do Vale do Paraíba Disciplina: Banco de Dados II
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
BANCO DE DADOS Aula 3 Josino Rodrigues Neto© Fundamentos em Banco de Dados.
Cristina Paludo Santos URI – Campus de Santo Ângelo
Profa. Ana Karina Barbosa fevereiro/2008
Projeto de BD Análise de Requisitos Projeto Conceitual Projeto Lógico
UFCG/CCT/DSC Cláudio Baptista
Bancos de Dados.
Professora: Sílvia C. Matos Soares
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Banco de Dados Mapeamento MER  MREL
URCAMP – Curso de Informática
Banco de Dados I Aula 4 - Projeto Conceitual de Banco de Dados
Banco de Dados I Aula 3 - Projeto Conceitual de Banco de Dados
Objetivos do Curso Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar:
Banco de Dados I Aula 5 - Projeto Conceitual de Banco de Dados
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,
Relacionamento entre Entidades: Tipos e Cardinalidade
Modelo Entidade-Relacionamento (ER)
Modelo de Entidade-relacionamento
Modelagem Entidade-Relacionamento (MER)
Programação para Internet Aula 10 Introdução (Características do BD Relacional e Implementação)
Tecnologias e Linguagens para Banco de Dados I - WEB Prof. João Ricardo Andrêo 29/5/ :40 1 Atividades: 1 - Criar uma base de dados para uma empresa.
Modelagem de Dados Aula 1.
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.
Ciências Contábeis Auditoria e Analise de Sistemas Contábeis Professor: Mario Medeiros.
1 Aula 02 Projeto de BD Prof. Juliano. 2 Projeto do Banco de Dados 1.caracterizar todos os dados necessários na perspectiva do usuário Resultado: especificação.
Processo de desenvolvimento de sistema de informação - DSI Diagrama de Entidade-Relação (DER) ou Entidade Associação (DEA) Representa as entidades envolvidas.
Transcrição da apresentação:

4 Projeto de Banco de Dados Carlos Alberto Heuser

Abordagem ER Capítulo 2 ©Carlos A. Heuser

Abordagem Entidade-Relacionamento Técnica para construir modelos conceituais de bases de dados. Técnica de modelagem de dados mais difundida e utilizada. Criada em 1976, por Peter Chen. ©Carlos A. Heuser 3

Abordagem Entidade-Relacionamento Padrão de fato para modelagem conceitual. Não é única: NIAM/ORM (técnica européia da década de 70) UML (técnica para modelos orientados a objeto) Técnicas de modelagem orientada a objeto (UML) baseiam-se nos conceitos da abordagem ER ©Carlos A. Heuser 4

Abordagem Entidade-Relacionamento Modelo de dados é representado através de um modelo entidade-relacionamento (modelo ER) Modelo ER é representado graficamente diagrama entidade-relacionamento (DER) ©Carlos A. Heuser

Conceitos centrais da abordagem ER Entidade Relacionamento Atributo Generalização/especialização Entidade associativa ©Carlos A. Heuser 6

Entidade Entidade Conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no banco de dados ©Carlos A. Heuser 7

Entidade – exemplos Sistema de informações industrial: produtos tipos de produtos vendas compras Sistema de contas correntes: clientes contas correntes cheques agências ©Carlos A. Heuser 8

Entidade representa Uma entidade pode representar: objetos concretos da realidade (uma pessoa, um automóvel) objetos abstratos (um departamento, um endereço) ©Carlos A. Heuser 9

Entidade – representação diagramática Representada através de um retângulo. PESSOA ©Carlos A. Heuser 10

Entidade – representação diagramática Representada através de um retângulo. PESSOA Nome da entidade ©Carlos A. Heuser 11

Entidade e instância Para referir um objeto particular fala-se em: instância ou ocorrência de entidade. ©Carlos A. Heuser 12

Entidade e instância - terminologias Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe ©Carlos A. Heuser 13

Entidade e instância - terminologias Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia adotada no livro ©Carlos A. Heuser 14

Entidade e instância - terminologias Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia adotada em textos acadêmicos em Inglês ©Carlos A. Heuser 15

Entidade e instância - terminologias Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia de orientação a objetos ©Carlos A. Heuser 16

Propriedades de entidades Entidade isoladamente pouco informa. É necessário atribuir propriedades às entidades Em um modelo ER, propriedades são especificadas através de: Relacionamentos Atributos Generalizações/especializações ©Carlos A. Heuser 17

Relacionamento - conceito Relacionamento Conjunto de associações entre entidades sobre as quais deseja-se manter informações na base de dados ©Carlos A. Heuser 18

Relacionamento – representação gráfica LOTAÇÃO DEPARTAMENTO EMPREGADO ©Carlos A. Heuser 19

Relacionamento e instância Relacionamento é um conjunto de associações entre instâncias de entidades Uma instância (ocorrência) é uma associação específica entre determinadas instâncias de entidade Exemplo (relacionamento LOTAÇÃO): instância de LOTAÇÃO = par específico formado por uma ocorrência de PESSOA e uma ocorrência de DEPARTAMENTO ©Carlos A. Heuser 20

Diagrama de ocorrências p3 p7 p1 entidade p8 p4 p6 p5 EMPREGADO p2 relacionamento p1,d1 p2,d1 p4,d2 p5,d3 LOTAÇÃO entidade d1 d2 d3 DEPARTAMENTO ©Carlos A. Heuser 21

Auto-relacionamento PESSOA CASAMENTO ©Carlos A. Heuser 22

Papel no relacionamento Função que uma ocorrência de uma entidade cumpre em uma ocorrência de um relacionamento. PESSOA marido esposa CASAMENTO papel no relacionamento ©Carlos A. Heuser 23

Papel no relacionamento Relacionamentos entre entidades diferentes: não é usual indicar os papéis das entidades LOTAÇÃO DEPARTAMENTO PESSOA ©Carlos A. Heuser 24

Auto-relacionamento diagrama de ocorrências p3 p7 p1 PESSOA p8 p6 p2 p4 p5 marido marido marido CASAMENTO esposa esposa esposa p1,p3 p6,p8 ©Carlos A. Heuser 25

Cardinalidade de relacionamentos Propriedade importante de um relacionamento: Número de ocorrências de uma entidade que podem estar associadas a uma determinada ocorrência de entidade através do relacionamento Chamada de cardinalidade de uma entidade em um relacionamento. Há duas cardinalidades: máxima mínima ©Carlos A. Heuser 26

Cardinalidade máxima - valores Para projeto de BD relacional: não é necessário distinguir entre diferentes cardinalidades máximas > 1 Dois valores de cardinalidades máximas são usados: cardinalidade máxima: 1 cardinalidade máxima não limitado (“muitos”), referida pela letra n ©Carlos A. Heuser 27

Cardinalidade máxima no DER LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 ©Carlos A. Heuser 28

Cardinalidade máxima - DER LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 expressa que a uma ocorrência de EMPREGADO (entidade do lado oposto da anotação) pode estar associada no máximo uma (“1”) ocorrência de DEPARTAMENTO ©Carlos A. Heuser 29

Cardinalidade máxima - DER LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 expressa que não há um limite superior para o número de ocorrências de EMPREGADO associadas a uma ocorrência de DEPARTAMENTO ©Carlos A. Heuser 30

Classificação de relacionamentos Cardinalidade máxima pode ser usada para classificar relacionamentos binários. Relacionamento binário: é aquele cujas instâncias envolvem duas instâncias de entidades. Relacionamentos binários n:n (muitos-para-muitos) 1:n (um-para-muitos) 1:1 (um-para-um) ©Carlos A. Heuser 31

Relacionamentos 1:1 PESSOA 1 1 marido esposa CASAMENTO ©Carlos A. Heuser 32

Relacionamentos 1:1 EMPREGADO 1 ALOCAÇÃO 1 MESA ©Carlos A. Heuser 33

Relacionamentos 1:n INSCRIÇÃO ALUNO n 1 CURSO ©Carlos A. Heuser 34

Relacionamentos 1:n EMPREGADO 1 n DEPENDENTE ©Carlos A. Heuser 35

Relacionamentos 1:n n EMPREGADO 1 DEPENDENTE Nomenclatura: uso de verbos entidades dão o nome ©Carlos A. Heuser 36

Relacionamentos 1:n EMPREGADO supervisor supervisionado 1 n SUPERVISÃO ©Carlos A. Heuser 37

Relacionamentos n:n n ALOCAÇÃO n ENGENHEIRO PROJETO ©Carlos A. Heuser 38

Relacionamentos n:n CONSULTA n MÉDICO n PACIENTE ©Carlos A. Heuser 39

Relacionamentos n:n n n CAPACIDADE PEÇA FORNECEDOR ©Carlos A. Heuser 40

Relacionamentos n:n PRODUTO composto componente n n COMPOSIÇÃO ©Carlos A. Heuser 41

Relacionamento ternário CIDADE DISTRIBUIDOR DISTRIBUIÇÃO PRODUTO ©Carlos A. Heuser 42

Cardinalidade de relacionamento ternário CIDADE DISTRIBUIDOR n 1 DISTRIBUIÇÃO n PRODUTO ©Carlos A. Heuser 43

Cardinalidade de relacionamento ternário CIDADE DISTRIBUIDOR n 1 a cardinalidade “1” refere-se a um par (cidade, fornecedor) DISTRIBUIÇÃO n PRODUTO ©Carlos A. Heuser 44

Cardinalidade mínima Cardinalidade mínima Número mínimo de ocorrências de entidade que são associadas a uma ocorrência de uma entidade através de um relacionamento. ©Carlos A. Heuser 45

Cardinalidade mínima Para fins de projeto de BD relacional, são consideradas apenas duas cardinalidades mínimas: cardinalidade mínima 0 cardinalidade mínima 1 Denominação alternativa: cardinalidade mínima 0 = “associação opcional” cardinalidade mínima 1 = “associação obrigatória” ©Carlos A. Heuser 46

Cardinalidade mínima - DER EMPREGADO (0,1) ALOCAÇÃO e1,m1 e3,m6 e4,m4 e2,m2 (1,1) MESA m1 m6 m4 m3 m2 m5 ©Carlos A. Heuser 47

Cardinalidade mínima - DER EMPREGADO (0,1) ALOCAÇÃO cardinalidade mínima e1,m1 e3,m6 e4,m4 e2,m2 (1,1) MESA m1 m6 m4 m3 m2 m5 ©Carlos A. Heuser 48

Exemplo - entidades e relacionamentos PRÉ-REQUIS liberada liberadora (0,n) (0,n) RESPONSÁVEL DEPARTAMENTO DISCIPLINA (0,n) (1,1) (0,n) DISC-CURSO (0,n) INSCRIÇÃO (0,n) ALUNO (1,1) CURSO ©Carlos A. Heuser 49

Atributo Atributo Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento ©Carlos A. Heuser 50

Atributo Atributo Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento PROJETO tipo código nome ©Carlos A. Heuser 51

Atributos com cardinalidade Cardinalidade mínima: atributo obrigatório (cardinalidade mínima “1”) cada entidade possui no mínimo um valor associado atributo opcional (cardinalidade mínima “0”) Cardinalidade máxima: atributo monovalorado (cardinalidade máxima “1”) cada entidade possui no máximo um valor associado atributo multivalorado (cardinalidade máxima “n”) ©Carlos A. Heuser 52

Atributo com cardinalidade CLIENTE telefone (0,n) código nome atributo obrigatório e monovalorado - (1,1) é o default ©Carlos A. Heuser 53

Atributo com cardinalidade CLIENTE telefone (0,n) código atributo opcional e multivalorado nome ©Carlos A. Heuser 54

Atributo em relacionamento ATUAÇÃO (1,n) (0,n) ENGENHEIRO PROJETO Código Nome Função Código Título ©Carlos A. Heuser 55

Atributo em relacionamento 1:n nº de parcelas (0,1) FINANCIAMENTO (0,n) FINANCEIRA VENDA taxa de juros ©Carlos A. Heuser 56

Identificador de entidade Cada entidade deve possuir um identificador Identificador de entidade = conjunto propriedades (atributos, relacionamentos) de uma entidade cujos valores servem para distinguir uma ocorrência da entidade das demais ocorrências da mesma entidade ©Carlos A. Heuser 57

Atributo identificador código PESSOA nome endereço capacidade PRATELEIRA número do corredor número da prateleira ©Carlos A. Heuser 58

Relacionamento identificador número de sequência código nome nome (1,1) (0,n) EMPREGADO DEPENDENTE entidade fraca ©Carlos A. Heuser 59

Relacionamento identificador número de sequência código nome nome (1,1) (0,n) EMPREGADO DEPENDENTE Observar a linha mais densa ©Carlos A. Heuser 60

Relacionamento identificador (recursão) GRUPO código (1,1) (0,n) EMPRESA número da empresa (1,1) (0,n) FILIAL número da filial ©Carlos A. Heuser 61

Identificador de relacionamento Uma ocorrência de relacionamento diferencia-se das demais do mesmo relacionamento pelas ocorrências de entidades que dela participam. ALOCAÇÃO n ENGENHEIRO n PROJETO ©Carlos A. Heuser 62

Relacionamento com atributo identificador CONSULTA (1,n) MÉDICO (0,n) PACIENTE data/hora ©Carlos A. Heuser 63

Generalização/especialização Conceito permite: atribuir propriedades particulares a um subconjunto das ocorrências (especializadas) de uma entidade genérica. ©Carlos A. Heuser 64

Generalização/especialização (1,1) (0,n) FILIAL CLIENTE nome código PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 65

Generalização/especialização (1,1) (0,n) CLIENTE nome FILIAL código Símbolo da generalização-especialização PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 66

Generalização/especialização Entidade genérica (1,1) (0,n) CLIENTE nome FILIAL código PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 67

Generalização/especialização (1,1) (0,n) CLIENTE nome FILIAL código Entidade especializada PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 68

Generalização/especialização (1,1) (0,n) CLIENTE nome FILIAL código Herda as propriedades da entidade genérica PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 69

Generalização/especialização (1,1) (0,n) CLIENTE nome FILIAL código Identificador somente na entidade genérica PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 70

Generalização/especialização (recursão) VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 71

Generalização/especialização (recursão) VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO Herança múltipla AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 72

Generalização/especialização (recursão) A árvore de herança deve ter uma única entidade raiz, que define o identificador. VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 73

Generalização/especialização (recursão) A árvore de herança deve ter uma única entidade, que define o identificador. Identificador de veículo definido aqui VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 74

Generalização/especialização (recursão) Caso proibido: Herança de múltiplos identificadores. VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 75

Generalização/especialização (recursão) Caso proibido: Herança de múltiplos identificadores. VEÍCULO TERRESTRE VEÍCULO AQUÁTICO Qual seria o identificador desta entidade? AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 76

Especialização total CLIENTE nome código indica que todo CLIENTE é ou PESSOA FÍSICA ou PESSOA JURíDICA t PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 77

Especialização parcial FUNCIONÁRIO indica que nem todo FUNCIONÁRIO é MOTORISTA ou SECRETÁRIA tipo de funcionário p MOTORISTA SECRETÁRIA ©Carlos A. Heuser 78

Especialização parcial necessário em especialização parcial FUNCIONÁRIO tipo de funcionário p MOTORISTA SECRETÁRIA ©Carlos A. Heuser 79

Especialização não exclusiva (compartilhada) Uma instância de PESSOA pode aparecer em mais de uma de suas especializações PESSOA c PROFESSOR FUNCIONÁRIO ALUNO ©Carlos A. Heuser 80

Tipos de generalizações/especializações Total (t) Parcial (p) Exclusiva (x) xt xp Compartilhada (c) ct cp 81

Entidade associativa Modificar modelo: Adicionar a informação de que medicamentos foram prescritos em uma consulta. CONSULTA n MÉDICO n PACIENTE ©Carlos A. Heuser 82

Incluindo o relacionamento de PRESCRIÇÃO CONSULTA n n MÉDICO PACIENTE PRESCRIÇÃO liga com? n PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 83

Substituindo relacionamento por entidade MÉDICO PACIENTE (1,1) (1,1) n n CONSULTA n PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 84

Entidade associativa CONSULTA n n MÉDICO PACIENTE entidade associativa PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 85