Baixe o app para aproveitar ainda mais
Prévia do material em texto
Projeto de Banco de Dados MODELO ER Profa. Luciana Ferraz Thomé lucianathome@id.uff.br 1 lucianathome@id.uff.br Universidade Federal Fluminense Instituto de Computação Modelo Entidade-Relacionamento Técnica para construir modelos conceituais no Projeto de um Banco de Dados. Técnica de modelagem conceitual mais lucianathome@id.uff.br 2 Técnica de modelagem conceitual mais difundida e utilizada. O modelo de dados é representado graficamente através do diagrama entidade-relacionamento. Criado por Peter Chen em 1976. Classe de Entidades Representa um conjunto de objetos (concretos ou abstratos) da realidade modelada sobre os quais deseja-se manter informações no banco de dados. lucianathome@id.uff.br 3 deseja-se manter informações no banco de dados. Classe de Entidades Representa um conjunto de objetos (concretos ou abstratos) da realidade modelada sobre os quais deseja-se manter informações no banco de dados. lucianathome@id.uff.br 4 DEPARTAMENTO EMPREGADO deseja-se manter informações no banco de dados. Classe de Entidades Representa um conjunto de objetos (concretos ou abstratos) da realidade modelada sobre os quais deseja-se manter informações no banco de dados. lucianathome@id.uff.br 5 DEPARTAMENTO EMPREGADO p1 p8 p7 p5p6 p4 p3 p2 d1 d3d2 deseja-se manter informações no banco de dados. Classe de Relacionamentos Representa conjunto de associações entre instâncias de entidades sobre os quais deseja-se manter informações no banco de lucianathome@id.uff.br 6 deseja-se manter informações no banco de dados. LOTADODEPARTAMENTO EMPREGADO Classe de Relacionamentos lucianathome@id.uff.br 7 LOTAÇÃODEPARTAMENTO EMPREGADO Classe de Relacionamentos lucianathome@id.uff.br 8 diagrama ER diagrama de ocorrências (ou instâncias) Classe de Entidades � ENTIDADE lucianathome@id.uff.br Classe de Relacionamentos � RELACIONAMENTO Auto-Relacionamento lucianathome@id.uff.br 10 Auto-Relacionamento lucianathome@id.uff.br 11 Papéis da entidade PESSOA no relacionamento CASAMENTO Auto-Relacionamento lucianathome@id.uff.br 12 Papéis da entidade PESSOA no relacionamento CASAMENTO PROJETOFORNECEDOR Uma instância (f,p,j) Relacionamento n-ário lucianathome@id.uff.br 13 PEÇA FORNECE Uma instância (f,p,j) do relacionamento FORNECE indica que um fornecedor f fornece uma peça p para ser utilizada em um determinado projeto j. PROJETOUm relacionamento ternário não é equivalente a dois binários. Relacionamento n-ário Cada instância indica que uma peça é lucianathome@id.uff.br 14 FORNECEDOR PEÇA binários. que uma peça é utilizada em um determinado projeto. Cada instância indica que uma peça é fornecida por um determinado fornecedor. Um relacionamento entre PROJETO e FORNECEDOR poderia caracterizar uma redundância. Cardinalidade (máxima) LOTAÇÃODEPARTAMENTO EMPREGADO n1 lucianathome@id.uff.br 15 Expressa que uma ocorrência de DEPARTAMENTO pode estar associada a muitas (“n”) ocorrências de EMPREGADO. Um departamento pode ter vários empregados. LOTAÇÃODEPARTAMENTO EMPREGADO n1 Cardinalidade (máxima) lucianathome@id.uff.br 16 Expressa que uma ocorrência de EMPREGADO pode estar associada a no máximo uma (“1”) ocorrência de DEPARTAMENTO. Um empregado está lotado em no máximo um departamento. Dois valores são utilizados: • cardinalidade máxima “1” • cardinalidade máxima “muitos”, Cardinalidade (máxima) lucianathome@id.uff.br 17 • cardinalidade máxima “muitos”, representada por “n” Relacionamentos binários: • n:n (muitos-para-muitos) • 1:n (um-para-muitos) • 1:1 (um-para-um) Relacionamentos 1:1 EMPREGADO 1 e1 e2 e3 e4 e6 e7 e5 e8 lucianathome@id.uff.br 18 GERENCIA 1 1 DEPARTAMENTO d1 d2 d3 d1,e4 d2,e2 d3,e5 Relacionamentos 1:1 1 1 lucianathome@id.uff.br 19 1 1 Relacionamentos 1:n LOTAÇÃODEPARTAMENTO EMPREGADO1 n lucianathome@id.uff.br 20 Relacionamentos 1:n ALUNO INSCRIÇÃO CURSO1n lucianathome@id.uff.br 21 EMPREGADO DEPENDENTE1 n EMPREGADO SUPERVISÃO 1 n supervisor supervisionado POSSUI Relacionamentos n:n e1 e2 e3 e4 e6 e7 e5 e8 EMPREGADO n lucianathome@id.uff.br 22 p1 p2 p3 e4,p1 e2,p2 e4,p2 ALOCAÇÃO n n PROJETO e4,p3 e5,p3 Relacionamentos n:n n n PRODUTO n n composto componente lucianathome@id.uff.br 23 MÉDICO CONSULTA PACIENTEn n PEÇA CAPACIDADE FORNECEDORn n COMPOSIÇÃO n n Relacionamento Ternário DISTRIBUIDORCIDADE Uma instância (d,p,c) lucianathome@id.uff.br 24 PRODUTO DISTRIBUIÇÃO Uma instância (d,p,c) do relacionamento DISTRIBUIÇÃO indica que um distribuidor d fornece um produto p para uma cidade c. Relacionamento Ternário DISTRIBUIDORCIDADE lucianathome@id.uff.br 25 PRODUTO DISTRIBUIÇÃO 1 n n A cardinalidade “1” refere-se a um par cidade e produto. Um par (produto,cidade) pode estar associado a no máximo um distribuidor. Relacionamento Ternário DISTRIBUIDORCIDADE lucianathome@id.uff.br 26 PRODUTO DISTRIBUIÇÃO 1 n n Um par (distribuidor,cidade) pode estar associado a vários produtos. Relacionamento Ternário DISTRIBUIDORCIDADE lucianathome@id.uff.br 27 PRODUTO DISTRIBUIÇÃO 1 n n Um par (distribuidor,produto) pode estar associado a várias cidades. Relacionamento Ternário PROJETOFORNECEDOR lucianathome@id.uff.br 28 PEÇA FORNECE n n n - um fornecedor f pode fornecer uma peça p para vários (n) projetos. - um fornecedor f pode fornecer várias (n) peças para um determinado projeto j. - uma peça p pode ser fornecida por vários (n) fornecedores para um determinado projeto j. EMPREGADO (0,1) Cardinalidade (mínima) Indica que uma mesa pode não estar associada a algum empregado. lucianathome@id.uff.br 29 ALOCAÇÃO (0,1) (1,1) MESA empregado. Cardinalidade mínima = 0 Indica que um empregado está associado a no mínimo uma mesa. Cardinalidade mínima = 1 O par (min,max) representa as cardinalidades mínima e máxima. lucianathome@id.uff.br Exemplo Um esquema simplificado do BD de uma Universidade. lucianathome@id.uff.br 31 Atributo Representa uma informação associada a cada ocorrência de uma entidade ou de um relacionamento. lucianathome@id.uff.br 32 PROJETO tipo código nome Domínio de um atributo: conjunto de valores que o atributo pode assumir. CLIENTE telefone (0,n) Atributo com Cardinalidade lucianathome@id.uff.br 33 código nome Atributo opcional e multivalorado (0,1) – opcional, monovalorado (0,n) – opcional, multivalorado (1,1) – obrigatório, monovalorado (default) (1,n) – obrigatório, multivalorado (1,n) (0,n) Atributo em Relacionamento lucianathome@id.uff.br 34 ENGENHEIRO ATUAÇÃO PROJETO (1,n) (0,n) Código Nome TítuloFunção Código FINANCEIRA FINANCIAMENTO VENDA (0,1) (0,n) Atributo em Relacionamento no.de parcelas lucianathome@id.uff.br 35 taxa de juros (0,1) (0,n) FINANCEIRA VENDAFINANCIAMENTO taxa de juros (0,1) no.de parcelas (0,1) Identificador de Entidade Atributo cujo valor identifica de forma única uma ocorrência da entidade das demais ocorrências. Uma entidade pode ser identificada por um conjunto de atributos. lucianathome@id.uff.br 36 PESSOA endereço código nome PRATELEIRA número da prateleira capacidade número do corredor identificada por um conjunto de atributos. Uma entidade pode ter mais de um identificador. Identificador de Entidade lucianathome@id.uff.br37 PEÇA corcódigo nome preço Entidade Fraca número Trata-se de uma entidade não identificada pelos próprios atributos. Nesse caso, existe a necessidade de um relacionamento identificador. Chave Parcial lucianathome@id.uff.br 38 EMPREGADO DEPENDENTE (1,1) (0,n) nomeseqüênciacódigo número nome Indica que DEPENDENTE é uma Entidade Fraca Relacionamento Identificador Entidade Proprietária Identificador de DEPENDENTE: código + numseq Chave Parcial Entidade Fraca lucianathome@id.uff.br 39 Identificador de Relacionamento Entidade(s) cujos valores identificam de forma única uma instância do relacionamento. lucianathome@id.uff.br 40 ALUNO INSCRIÇÃO CURSOn 1 Identificador: (ALUNO) Identificador de Relacionamento Entidade(s) cujos valores identificam de forma única uma instância do relacionamento. lucianathome@id.uff.br 41 ENGENHEIRO ALOCAÇÃO PROJETOn n Identificador: (ENGENHEIRO, PROJETO) Identificador de Relacionamento Entidade(s) cujos valores identificam de forma única uma instância do relacionamento. lucianathome@id.uff.br 42 EMPREGADO GERENCIA DEPARTAMENTO 1 1 Identificadores: (EMPREGADO), (DEPARTAMENTO) Atributos podem ser necessários na identificação de um relacionamento. Identificador de Relacionamento lucianathome@id.uff.br 43 ALUNO CURSA DISCIPLINA n n semestre Identificador: (ALUNO, DISCIPLINA, semestre) nota Atributos podem ser necessários na identificação de um relacionamento. Identificador de Relacionamento lucianathome@id.uff.br 44 MÉDICO CONSULTA PACIENTEn n data/hora Identificador ? Atributos podem ser necessários na identificação de um relacionamento. Identificador de Relacionamento lucianathome@id.uff.br 45 MÉDICO CONSULTA PACIENTEn n data/hora Identificadores: (MÉDICO, data/hora), (PACIENTE, data/hora) Atributos podem ser necessários na identificação de um relacionamento. Identificador de Relacionamento lucianathome@id.uff.br 46 MÉDICO CONSULTA PACIENTEn n data/hora Identificadores: (número), (PACIENTE, data/hora) (MÉDICO, data/hora) número Projeto de Banco de Dados (1,1)(1,N) (1,1) (0,1) (1,1) (0,N) (1,N) (1,N) (0,N)(0,1) lucianathome@id.uff.br (1,N) (0,N) (1,1) Esquema conceitual: BD-empresa, construído a partir do Modelo ER - Entidade-Relacionamento Figura do livro “Database Systems” Elmasri & Navathe Esquema Lógico-Relacional lucianathome@id.uff.br 48
Compartilhar