Educação Profissional Técnica de Nível Médio em Informática MER – Modelo de Entidade Relacionamento Marcelo Mendes Manaus - 2013 1 Proporciona uma visão lógica de alto nível dos dados É uma descrição abstrata de uma porção do mundo real Todos os dados são visualizados como fatos específicos sobre entidades, relacionamentos e atributos Através do MER, podemos ter uma fotografia do sistema As entidades, relacionamentos e atributos descrevem as regras de negócio da empresa Fucapi Modelo Entidade-Relacionamento (MER) Original: – Fases do Projeto de Bases de Dados – Definição e Objetivo do Modelo ER – Entidades e Conjuntos-Entidade – Atributos e Domínio de um Atributo – Relacionamentos e Conjuntos-Relacionamento – Projeto de Chaves – Grau de um Relacionamento – Restrições de Cardinalidade e Integridade Referencial Fucapi Extensões e Variações do MER : – Agregação – Generalização/Especialização – Notação, Variações e Exemplos – Dicas para Elaboração de Modelos E-R Fucapi Definição: modelo baseado na percepção do mundo real que consiste em um conjunto de objetos básicos, chamados entidades, e nos relacionamentos entre esses objetos. Objetivo: facilitar o projeto de banco de dados, possibilitando especificar a estrutura lógica geral. Fucapi Atributo DataIni supervisor Relacionamento gerenciar 1 número endereço N 1 1 N trabalhar FUNCIONÁRIO 1 DEPARTAMENTO N nome 1 1 salário localização participar possuir controlar horas N N nome DataNiver número nome N DEPENDENTE parentesco Fucapi PROJETO número nome Entidade Entidade Entidade Fraca Relacionamento Relacionamento Identificador Atributo Atributo Identificador z Atributo Multivalorado Fucapi ... Atributo Composto Atributo Derivado E1 E1 E1 E2 R 1 Ex: Agência e Conta Corrente N R R Participação total de E2 em R (min,max) Fucapi Cardinalidade 1:N para E1:E2 em R E2 E2 Constraint (min,max) de E em R código código nome GENERO endereço 1,1 salário 4,N descrição FUNCIONARIO 1,N classifica 1,1 código nome código principal 0,N supervisor ATOR código 1,1 possui 1,N STATUS CLIENTE qtde fitas preço possui possui valor pago aluguel dt retorno valor previsto 1,N 0,N CLIENTE nome FILME 1,1 descrição dt prev ret dt aluguel código 2,N nome endereço Fucapi * multa 1,N 1,N FITA condição código ENTIDADE Qualquer coisa para a qual desejamos guardar informação Conjunto de objetos individuais chamados instâncias Uma instância deve ter uma identidade distinta de todas as outras Fucapi INDEPENDENTES (FORTES) ▪ entidade que existe por si só ▪ NOTAÇÃO : retângulo RESTRIÇÕES Não pode existir duas entidades com mesmo no model DICA: Geralmente tem mais de um atributo O nome = substantivo Substantivo é tudo o que nomeia as "coisas" em geral. Substantivo é tudo o que pode ser visto, pego ou sentido. Substantivo é tudo o que pode ser precedido de artigo. Fucapi DEPENDENTES(FRACAS) ▪ Entidades que dependem de outras para sua existência (dependência por existência) ▪ Entidades que dependem de outras para sua identificação (dependência por identificação) ▪ NOTAÇÃO: Retângulo duplo RESTRIÇÕES Só existe enquanto a entidade forte existir Fucapi Entidade Dependente IdFunc Nome Endereço Nome Salário 1 N Funcionário Tem IdDepto P-20 1 Trabalho Entidade Independente Fucapi Dependente Nome Departamento Atributo- serve para qualificar a entidade Simples Multivalorado Determinante ou Identificador Composto Derivado ou Calculado Fucapi Simples só pode assumir um único valor elementar Exemplo: Nome, Idade, Data de Nascimento Notação Nome Rua Idade Num CEP Fone PESSOAS Fucapi Endereço REGRAS Começar o nome do atributo com uma inicial maiúscula e estar no singular Distinção entre conjunto de entidades e atributo. ▪ Exemplo: AUTOR para livro de uma biblioteca ▪ AUTOR para uma editora Se um conjunto de entidades tem um único atributo, provavelmente aquele conjunto é atributo de um outro conjunto de entidades. Cada atributo deve ocorrer uma única vez em apenas um conjunto de entidades. Desconfiar da modelagem de um conjunto de entidades que tem um só atributo. Provavelmente, ele é um atributo de outro conjunto. Fucapi Multivalorado pode assumir mais de uma valor Exemplo: Fones Notação Rua Nome Num Idade Fones CEP PESSOAS Fucapi Endereço Determinante Identifica unicamente uma entidade da outra Lembra o conceito de Chave Notação Nome Rua Idade Num Fones Código CEP PESSOAS Fucapi Endereço Determinante Identifica unicamente uma entidade da outra Lembra o conceito de Chave Notação Fones Nome Idade Rua Num CEP CPF PESSOAS IdPessoa Fucapi Endereço Composto Pode ser dividido em sub atributos Exemplo: Endereço Notação Nome Idade Rua Num Fones Código Fucapi CEP PESSOAS Endereço Derivado ou Calculado Seu valor é gerado a partir do valor de outro atributo Exemplo: Data de Nascimento e Idade Notação DataNasc Nome Idade Sexo * PACIENTES Fucapi RELACIONAMENTO É uma ligação entre duas ou mais entidades É representado por um losango xx RESTRIÇÕES ▪ Não se pode repetir nomes de relacionamentos ▪ O relacionamento deve ligar, no mínimo, duas entidades Fucapi a7 DEPENDENTES (FORTES) o conceito de entidade dependente e independente é reforçado pelo tipo de relacionamento quando se quer que uma entidade se torne dependente, cria-se um relacionamento identificador INDEPENDENTES (FRACOS) ▪ Conecta entidades fortes e fracas Fucapi Entidade Independente Entidade Dependente Código Nome Identificador Endereço Salário 1 Código 1 N É de Funcionário possui Tem N Dependente ÉC N Nome om po sto de Supervisor Código Trabalho Trabalha no Nome 1 Departamento Não Identificador Papel do Relacionamento Fucapi CARDINALIDADE DO RELACIONAMENTO • É a propriedade do relacionamento que define exatamente com quantas instâncias uma entidade de um conjunto pode se relacionar com outras entidades de outro conjunto; • PODE SER: • um para um • um para muitos; e • muitos para muitos Fucapi CARDINALIDADE 1:1 Médicos MÉDICOS Especialidades 1:1 M1 E1 M2 E2 M3 . . . Mn E3 . . . En 1 Fucapi possuem 1 ESPECIALIDADES CARDINALIDADE 1:N Médicos Especialidades 1:N E1 M1 E2 M2 M3 . . . Mn MÉDICOS N Fucapi E3 E4 . . . En possuem 1 ESPECIALIDADES CARDINALIDADE 1:N Pacientes Médicos N:N P1 M1 P2 M2 P3 M3 P4 . . . Pn M4 . . . Mn MÉDICOS MÉDICOS N (0,1) Fucapi consultas possuem N (1,N) PACIENTES ESPECIALIDADES