BANCO DE DADOS Prof. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com MODELAGEM ER Consiste em um modelo conceitual, criado em 1976 por Peter Chen. O diagrama que resulta desta operação é chamado de diagrama entidade-relacionamento. Este diagrama é composto por: Entidades; Relacionamentos; Atributos. Chaves primárias e secundárias. 1
ENTIDADES São as classes dos objetos que serão representados no banco de dados, estes objetos existem por si só. Exemplos: Cliente; Médico; Consulta (abstrato); Tratamento. ENTIDADES A representação de uma entidade é feita por um retângulo. Alguns exemplos de entidades em temos: Sistema Comercial -> Produtos, tipos de produtos, vendas e compras Sistema de contas correntes -> Clientes, contas correntes, cheques, agência. 2
ENTIDADES FRACAS Uma entidade fraca é aquela que existe através de um relacionamento com outra entidade, chamada de forte. Como exemplo temos: Empregado -> Entidade forte Contém -> Relacionamento Dependente -> Entidade fraca ENTIDADE ASSOCIATIVA Em um determinado relacionamento, caso seja necessário registrar o medicamento prescrito em cada consulta, o relacionamento passa a ser tratado como entidade. 3
EXERCÍCIO Que entidades podem ser definidas em: Supermercado; Compra de passagens rodoviária; Locação de quadra esportiva. RELACIONAMENTOS Os relacionamentos ocorrem entre as entidades. Como relacionamentos em um sistema, temos: Um tratamento se refere a um cliente; Um médico assina vários tratamentos; Um cliente marca consultas; Um médico atende um paciente em uma consulta. 4
RELACIONAMENTOS Para identificar os relacionamentos de uma entidade é útil construir um diagrama de ocorrências. IDENTIFICANDO RELACIONAMENTOS 5
RELACIONAMENTOS Pode ocorrer que uma entidade se relacione com ela mesmo, chamamos então de auto-relacionamento. Neste caso as instâncias participam com papeis diferentes. RELACIONAMENTOS Na modelagem entidade relacionamento, um relacionamento pode ser admitido em quatro diferentes graus: Relacionamento unário; Relacionamento binário; Relacionamento ternário; Relacionamento n-ário. 6
RELACIONAMENTO UNÁRIO RELACIONAMENTO BINÁRIO E TERNÁRIO 7
RELACIONAMENTOS Além da ligação, um relacionamento também possui cardinalidade, que é responsável em especificar o número de instâncias que um relacionamento pode ter. Os relacionamentos podem ser: 1 para 1 (1:1); 1 para n (1:n); n para 1 (n:1); n para n (n:n). CARDINALIDADE Empregado N Atua N Projeto 8
GENERALIZAÇÃO / ESPECIALIZAÇÃO Também é aplicado o conceito de herança, o símbolo usado para representação é um triângulo. HERANÇA PARCIAL Acontece quando nem todas as ocorrências da entidade genérica possuem ocorrências da entidade especializada. 9
HERANÇA TOTAL Acontece quando todas as ocorrências da entidade genérica possuem ocorrências da entidade especializada. HERANÇA EXCLUSIVA A ocorrência da entidade especializada é exclusiva, aparecendo em apenas uma das entidades especializadas. 10
HERANÇA COMPARTILHADA Uma ocorrência da entidade genérica pode aparecer em múltiplas ocorrências das entidades especializadas. HERENÇA MÚLTIPLA 11
PAPÉIS EM UM RELACIONAMENTO O papel é uma função que permite identificar a ocorrência de uma entidade em outra entidade. ATRIBUTOS Também chamado de dicionários de dados, os atributos denotam as propriedades e os tipos de dados de uma entidade, como: Cliente nome texto(30) Obrigatório nascimento data Opcional sexo texto(01) Obrigatório 12
ATRIBUTOS Um atributo pode ser: Simples ->Apenas um caractere; Composto -> Formando por um conjunto de caracteres. ATRIBUTOS Podem também assumir valores: Monovalorados->Atributo possui uma instância; Multivalorados->Atributo pode possuir várias instâncias 13
ATRIBUTOS Se a cardinalidade for omitida em uma DER, o valor padrão será 1:1. ATRIBUTOS Quanto ao armazenamento o atributo pode ser considerado básico ou derivado. Atributos derivados são representados por linhas pontilhadas, significando que os valores podem ser calculados a partir de outros atributos. 14
CARDINALIDADE Cardinalidade mínima 1: atributo obrigatório 0: atributo opcional Cardinalidade máxima 1: atributo monovalorado N: atributo multivalorado ATRIBUTOS Um atributo pode ainda estar atribuído a um relacionamento 15
EXERCÍCIO Considerando um sistema acadêmico, envolvendo entidades comuns, defina pelo menos 3 atributos para cada uma das entidades. Aluno; Professor; Disciplina; Turma. CHAVES PRIMÁRIAS A chave primária é representado por um ou mais atributos para identificar unicamente um elemento de uma entidade, como chaves primárias geralmente são usados os seguintes atributos: CPF para cliente; CRM para um médico; CID10 para uma doença. 16
CHAVE ESTRANGEIRA É uma chave formada através de um relacionamento com a chave primária de outra tabela. Chave primária do cliente em uma consulta; Chave primária de um médico em uma consulta; Chave primária da consulta em uma tratamento. LEITURA DER 17
ESQUEMA / INSTÂNCIAS ESQUEMA / INSTÂNCIAS 18
MODELANDO ER ENTIDADE RELACIONAMENTO Diferentes leitores devem ter a mesma interpretação sobre o diagrama; Toda equipe deve usar o DER como o início do projeto de banco de dados, e não como uma ferramenta informal. 19
IDENTIDFICANDO RELACIONAMENTOS VIDEOLOCADORA Uma pequena locadora de vídeos possui cerca de 2.000 fitas de vídeo, cujo empréstimo deve ser controlado. Cada fita possui um numero. Para cada filme, e necessário saber seu título e sua categoria (comédia, drama, aventura).cada filme recebe um identificador próprio. Para cada fita e controlado que filme ela contem. Para cada filme há pelo menos uma fita, e cada fita contem somente um filme. Alguns poucos filmes necessitam duas fitas. Os clientes podem desejar encontrar os filmes estrelados pelo seu ator predileto. Por isso, e necessário manter a informação dos atores que atuam em cada filme. 20
VIDEOLOCADORA Nem todo filme possui atores considerados estrelas". Os clientes, as vezes, desejam receber referencias de determinado ator, tais como o nome real, a data de nascimento, etc. A locadora possui muitos clientes cadastrados. Somente clientes cadastrados podem alugar fitas. Para cada cliente e necessário saber seu pré-nome e seu sobrenome, seu telefone e seu endereço. Cada cliente recebe um numero de associado. Desejamos saber quais fitas estão locadas por um dado cliente. Um cliente pode locar varias fitas ao mesmo tempo. Não são mantidos registros históricos de alugueis. RESOLUÇÃO 21
EXERCÍCIOS EXERCÍCIOS O que este diagrama representa? Descreva a situação apresentada por este diagrama. 22
LOJA DE INFORMÁTICA Uma loja que comercializa artigos de informática resolveu expandir a sua forma de atuação no mercado, e passou a aceitar pedidos de compra por telefone. Os clientes, ao ligarem para a loja para fazerem seus pedidos, são obrigados a fornecer o nome, sobrenome, telefone e endereço completo (rua, número, complemento, bairro, cidade, estado, CEP). Os pedidos de compra são identificados por um número de controle, e contém as informações da data em que foi feito o pedido, e a forma de pagamento (cheque, dinheiro, ou cartão). Os artigos comercializados na loja possuem um código, nome e preço unitário. PESQUISA SOCIO ECÔNOMICO Um instituto de opinião pública vai realizar uma pesquisa em todos os estados da região sul do Brasil, para levantar dados sócio-econômicos sobre os domicílios e as pessoas que neles residem. Para isso, o instituto contratou cerca de 5.000 entrevistadores, que percorrerão os 150 municípios escolhidos para a coleta. Os domicílios são classificados, de acordo com sua finalidade, em particulares (aqueles cuja finalidade é a moradia de pessoas), e em coletivos (hotéis e quartéis). Todos domicílio entrevistado possui um código, e devem ter guardadas as informações de sua localização (rua, bairro, cidade e estado). Nos domicílios particulares, são pesquisados o número de televisões e rádios existentes. Nos domicílios coletivos, são levantadas as informações de idade, sexo e grau de instrução. 23
BIBLIOTECA Construa um diagrama ER para a biblioteca descrita abaixo. O acervo de uma biblioteca é composto por exemplares de livros. Cada livro é caracterizado por um ou mais autores, um título, uma editora, local de edição, um código ISBN e um conjunto de palavras-chave. A biblioteca possui pelo menos um exemplar de cada livro, numerados sequencialmente (exemplares 1, 2, 3, etc.). Os associados da biblioteca podem retirar exemplares dos livros. Cada associado pode levar emprestado no máximo três exemplares. Para cada empréstimo é registrada a data em que este foi realizado. Cada associado possui um código, um nome e endereço. 24