ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 2 Prof. Msc. Ricardo Antonello
ABORDAGEM ER A primeira etapa do projeto de um banco de dados é a construção de um modelo conceitual ou modelagem conceitual. O objetivo da modelagem conceitual é obter uma descrição abstrata, independente da implementação em computador A técnica de modelagem de dados mais difundida e utilizada é a abordagem entidade-relacionamento (ER) onde o modelo de dados é representado através de um modelo entidade-relacionamento (modelo ER).
ABORDAGEM ER O modelo ER é representado graficamente, através de um diagrama entidaderelacionamento (DER). A abordagem ER foi criada em 1976 por Peter Chen. Mesmo as técnicas de modelagem orientada a objetos que têm surgido nos últimos anos baseiam-se nos conceitos da abordagem ER. Agora veremos os seguintes conceitos da ER: entidade, relacionamento, atributo, generalização/especialização e entidade associativa. Além disso veremos a notação gráfica para diagramas ER.
ABORDAGEM ER O conceito fundamental da abordagem ER é o conceito de entidade: Entidade = conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no banco de dados
ENTIDADE É: Um conjunto de objetos da realidade modelada Vale lembrar que somente os objetos sobre os quais deseja-se manter informações são relevantes. Exemplo: Sistema de controle de produção produtos tipos de produtos vendas compras
ENTIDADE É: Outro exemplo: Sistema bancário contas correntes clientes endereços cheques agências
REPRESENTAÇÃO GRÁFICA DE ENTIDADES Cada retângulo representa um conjunto de objetos no banco de dados, Caso seja necessário referir um objeto particular (uma determinada pessoa ou um determinado departamento) fala-se em ocorrência de entidade ou instância de entidade).
RELACIONAMENTOS Pode ser desejável saber quais pessoas estão associadas a quais departamentos em uma organização. Conceito: Relacionamento = conjunto de associações entre entidades
RELACIONAMENTOS Temos acima: um conjunto de objetos classificados como pessoas (relacionamento PESSOA) um conjunto de objetos classificados como departamentos (relacionamento DEPARTAMENTO) um conjuntos de associações, que ligam um departamento a uma pessoa. (relacionamento LOTAÇÃO).
INSTANCIA DE RELACIONAMENTO? Da mesma forma que fizemos com entidades, quando quisermos nos referir a associações particulares dentro de um conjunto, vamos nos referir a ocorrências de relacionamentos. No caso do relacionamento LOTAÇÃO uma ocorrência seria um par específico formado por uma determinada ocorrência da entidade PESSOA e por uma determinada ocorrência da entidade DEPARTAMENTO. A seguir segue um diagrama de INSTANCIAS com fim exclusivamente didático. Ou seja, não se usa esse tipo de diagrama na modelagem...
AUTO-RELACIONAMENTO No caso do relacionamento de casamento, uma ocorrência de pessoa exerce o papel de marido e a outra ocorrência de pessoa exerce o papel de esposa. COMO FAREMOS? Duplicar a entidade pessoa não fará sentido. Deve-se utilizar um auto-relacionamento e anotar papéis para deixar o sentido claro!
AUTO-RELACIONAMENTO Papéis são anotados no DER como mostrado ao lado. Papeis são necessário para dar sentido ao relacionamento. No caso de relacionamentos entre entidades diferentes, como o de LOTAÇÃO (departamentoxpessoa) o sentido é óbvio e portanto papeis não são necessários.
CARDINALIDADE DE RELACIONAMENTO IMPORTANTE!!! Para fins de projeto de banco de dados, uma propriedade importante de um relacionamento é a de quantas ocorrências de uma entidade podem estar associadas a uma determinada ocorrência através do relacionamento. Esta propriedade é chamada de cardinalidade de uma entidade em um relacionamento. Há duas cardinalidades a considerar: a cardinalidade máxima e a cardinalidade mínima.
CONCEITO DE CARDINALIDADE cardinalidade (mínima, máxima) de entidade em relacionamento significa número (mínimo, máximo) de ocorrências de entidade associadas a uma ocorrência da entidade em questão através do relacionamento
CARDINALIDADE MÁXIMA Vamos considerar as seguintes cardinalidade máximas: Entidade EMPREGADO tem cardinalidade máxima 1 no relacionamento LOTAÇÃO: Isso significa que uma ocorrência de EMPREGADO pode estar associada (lotado) a no máximo uma ocorrência de DEPARTAMENTO Entidade DEPARTAMENTO tem cardinalidade máxima 120 no relacionamento LOTAÇÃO: Isso significa que uma ocorrência de DEPARTAMENTO pode estar associada a no máximo 120 ocorrências de EMPREGADO, ou em outros termos, que um departamento pode ter nele lotado no máximo 120 empregados.
CARDINALIDADE MÁXIMA Na prática se usa apenas a cardinalidade máxima 1 ou muitos sendo que para definir muitos no diagrama usamos a letra n Veja a seguir um exemplo:
CARDINALIDADE
RELACIONAMENTO BINÁRIO Podemos classificar os relacionamentos em: n:n (muitos-para-muitos) 1:n (um-para-muitos) 1:1 (um-para-um)
CARDINALIDADE MÁXIMA Observe que este relacionamento, apesar de envolver apenas uma entidade, é também considerado como um relacionamento binário. O que determina o fato de o relacionamento ser binário é o número de ocorrências de entidade que participam de cada ocorrência do relacionamento. De cada ocorrência de CASAMENTO participam exatamente duas ocorrências da entidade PESSOA (um marido e uma esposa).
RELACIONAMENTOS 1:1 Mais um exemplo: 1:1
RELACIONAMENTOS 1:N
RELACIONAMENTOS 1:N
RELACIONAMENTOS N:N
RELACIONAMENTOS N:N
RELACIONAMENTOS TERNÁRIOS A abordagem ER permite que sejam definidos relacionamentos de grau maior do que dois (relacionamentos ternários, quaternários, ) Cada ocorrência do relacionamento DISTRIBUIÇÃO associa três ocorrências de entidade: um produto a ser distribuído, uma cidade na qual é feita a distribuição e um distribuidor.
RELACIONAMENTOS TERNÁRIOS No caso de um relacionamento ternário, a cardinalidade refere-se a pares de entidades. Em um relacionamento R entre três entidades A, B e C, a cardinalidade máxima de A e B dentro de R indica quantas ocorrências de C podem estar associadas a um par de ocorrências de A e B.
RELACIONAMENTOS TERNÁRIOS
RELACIONAMENTOS TERNÁRIOS
RELACIONAMENTOS TERNÁRIOS na linha que liga o retângulo representativo da entidade DISTRIBUIDOR ao losango representativo do relacionamento expressa que cada par de ocorrências (cidade, produto) está associado a no máximo um distribuidor. Em outros termos, não há concorrência pela distribuição de um produto em uma cidade.
RELACIONAMENTOS TERNÁRIOS Já os dois n expressam que: A um par (cidade, distribuidor) podem estar associados muitos produtos, ou em outros termos, um distribuidor pode distribuir em uma cidade muitos produtos. A um par (produto, distribuidor) podem estar associadas muitas cidades, ou em outros termos um distribuidor pode distribuir um produto em muitas cidades.
CARDINALIDADE MÍNIMA Além da cardinalidade máxima, uma outra informação que pode ser representada por um modelo ER é o 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. Para fins de projeto de BD, consideram-se apenas duas cardinalidades mínimas: a cardinalidade mínima 0 e a cardinalidade mínima 1.
CARDINALIDADE MÍNIMA Cardinalidade mínima 1 também recebe a denominação de associação obrigatória Cardinalidade mínima 0 também recebe a denominação de associação opcional.
CARDINALIDADE MÍNIMA E MÁXIMA
EXEMPLOS DE DER DE UMA UNIVERSIDADE
EXERCÍCIO 01 FAÇA O DER Uma pequena locadora de vídeos possui ao redor de 2.000 fitas de vídeo, cujo empréstimo deve ser controlado. Cada fita possui um número. Para cada filme, é necessário saber seu título e sua categoria (comédia, drama, aventura, ). Cada filme recebe um identificador próprio. Para cada fita é controlado que filme ela contém. Para cada filme há pelo menos uma fita, e cada fita contém somente um filme. A locadora possui muitos clientes cadastrados. Somente clientes cadastrados podem alugar fitas. Finalmente, desejamos saber que fitas cada cliente tem emprestadas. Um cliente pode ter várias fitas em um instante no tempo. Não são mantidos registros históricos de aluguéis.
EXERCÍCIO 02 FAÇA O DER Um empresa trabalha com a venda de títulos de sócio dos seus clubes em todo o Brasil. O título dá direito ao associado usufruir da estrutura dos clubes em qualquer lugar que a empresa tenha filial. Cada título é vendido por um vendedor (pessoa física) que é funcionário de um representante (pessoa jurídica). Existem diversos tipos de títulos à venda. Um cliente pode adquirir quantos títulos desejar. Cada vez que o cliente adquire um título ele pode elencar até 6 dependentes que irão usufruir do mesmo. Cada contrato é associado a uma filial da empresa.
Prof. Msc. Ricardo Antonello ricardo@antonello.com.br www.unoesc.edu.br Material adaptado da obra: HEUSER, Carlos Alberto. Projeto de banco de dados. 6. ed. Porto Alegre: Bookman, 2009. 282 p DUVIDAS?