um pouco mais de cardinalidade e relacionamentos

38
Um pouco mais de cardinalidade e Relacionamentos

Upload: internet

Post on 16-Apr-2015

106 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Um pouco mais de cardinalidade e Relacionamentos

Um pouco mais de cardinalidade e Relacionamentos

Page 2: Um pouco mais de cardinalidade e Relacionamentos

cardinalidade (mínima, máxima) de entidadeem relacionamento= 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

Page 3: Um pouco mais de cardinalidade e Relacionamentos

Cardinalidade Máxima

• Entidade EMPREGADO tem cardinalidade máxima 1 no relacionamento LOTAÇÃO

• Entidade DEPARTAMENTO tem cardinalidade máxima 120 no relacionamento LOTAÇÃO:

Page 4: Um pouco mais de cardinalidade e Relacionamentos
Page 5: Um pouco mais de cardinalidade e Relacionamentos

A cardinalidade máxima pode ser usada para classificar relacionamentos binários.Um relacionamento binário é aquele cujas ocorrências envolvem duas entidades.

• Podemos classificar os relacionamentos• em n:n (muitos-para-muitos), 1:n (um-para-

muitos) e 1:1 (um-para-um).

Page 6: Um pouco mais de cardinalidade e Relacionamentos

Exemplos

Page 7: Um pouco mais de cardinalidade e Relacionamentos
Page 8: Um pouco mais de cardinalidade e Relacionamentos

Ternário• Relacionamentos de grau maior do que dois(relacionamentos ternários, quaternários,…)

Page 9: Um pouco mais de cardinalidade e Relacionamentos
Page 10: Um pouco mais de cardinalidade e Relacionamentos

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.

Page 11: Um pouco mais de cardinalidade e Relacionamentos

• Um distribuidor pode distribuir em uma cidade muitos produtos.

• Um distribuidor pode distribuir um produto em muitas cidades.

Page 12: Um pouco mais de cardinalidade e Relacionamentos

Cardinalidade Mínima

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

Page 13: Um pouco mais de cardinalidade e Relacionamentos

• A cardinalidade mínima 1 também recebe a denominação de “associação obrigatória”

• a cardinalidade mínima 0 também recebe a denominação de “associação opcional”.

Page 14: Um pouco mais de cardinalidade e Relacionamentos

cada empregado deve ter a ele alocada obrigatoriamente uma mesa (cardinalidade mínima 1) e que uma mesa pode existir sem que a ela esteja alocado um empregado (cardinalidade mínima 0).

Page 15: Um pouco mais de cardinalidade e Relacionamentos

Exemplos de Entidades e Relacionamentos

Page 16: Um pouco mais de cardinalidade e Relacionamentos

• Cada disciplina possui exatamente um departamento responsável, e um departamento é responsável por muitas disciplinas, inclusive por nenhuma.

• Uma disciplina pode possuir diversos pré-requisitos, inclusive nenhum. Uma disciplina pode ser pré-requisito de muitas outras disciplinas, inclusive de nenhuma.

• Uma disciplina pode aparecer no currículo de muitos cursos (inclusive de nenhum) e um curso pode possuir muitas disciplinas em seu currículo (inclusive nenhuma).

• Um aluno está inscrito em exatamente um curso e um curso pode ter

• nele inscritos muitos alunos (inclusive nenhum).

Page 17: Um pouco mais de cardinalidade e Relacionamentos

AtributoDado que é associado a cada ocorrência de uma entidade ou de um relacionamento

Page 18: Um pouco mais de cardinalidade e Relacionamentos

nome e código são atributos obrigatórios(cardinalidade mínima “1” – cada entidade possui no mínimo um valor associado) e mono-valorados (cardinalidade máxima “1” – cada entidade possui no máximo um valor associado). Já o atributo telefone, é um atributo opcional (cardinalidade mínima 0) e multi-valorado (cardinalidade máxima n).

Page 19: Um pouco mais de cardinalidade e Relacionamentos
Page 20: Um pouco mais de cardinalidade e Relacionamentos

Atributos do Relacionamento

Page 21: Um pouco mais de cardinalidade e Relacionamentos

Identificador

Page 22: Um pouco mais de cardinalidade e Relacionamentos

Relacionamento Identificador

Cada dependente está relacionado a exatamente um empregado. Um dependente é identificado pelo empregado ao qual ele está relacionado e por um número de seqüência que distingue os diferentes dependentes de um mesmo empregado.

Page 23: Um pouco mais de cardinalidade e Relacionamentos
Page 24: Um pouco mais de cardinalidade e Relacionamentos

Modelagem de Dados Usando o Modelo Entidade-

Relacionamento (MER)O MER é usado principalmente durante o processo de projeto da base de dados.

No projeto conceitual, você elabora o modelo conceitual do BD, ou seja, a representação de elementos do mundo real (entidades e seus atributos) e os relacionamentos existentes entre eles.

Este modelo de alto nível facilita a compreensão do ambiente real do usuário sem estar vinculado a nenhum modelo tecnológico de BD.

Representa as propriedades estáticas do sistema, definindo a estrutura do BD em alto nível.

Page 25: Um pouco mais de cardinalidade e Relacionamentos

Os três elementos fundamentais que fazem parte do MER

Entidade – representação abstrata de objetos de interesse do sistema no mundo real do qual você deve armazenar informações.

Atributo – tipo de informação elementar que deve ser armazenada de cada entidade, representando uma propriedade ou um relacionamento entre elas.

Relacionamento – representa uma associação entre entidades

Page 26: Um pouco mais de cardinalidade e Relacionamentos

Modelo conceitualA modelagem conceitual basea-se no mais alto nível e deve ser usada para envolver o cliente. Os exemplos de modelagem de dados visto pelo modelo conceitual são mais fáceis de compreender, já que não há limitações ou aplicação de tecnologia específica. O diagrama de dados que deve ser construido aqui, chama-se Diagrama Entidade e Diagrama Entidade e Relacionamento, onde deverá ser identificado todas as entidades e os relacionamentos entre elas. Este diagrama é a chave para a compreensão do modelo conceitual de dados.Modelo lógicoO modelo lógico já leva em conta algumas limitações e implementa recursos como adequação de padrão e nomenclatura. Define as chaves primárias e estrangeiras. deve ser criado levando em conta os exemplos de modelagem de dados criados no modelo conceitual.Modelo físicoNo modelo físico fazemos a modelagem física do modelo de banco de dados. Leva-se em conta as limitações impostas pelo SGBD escolhido e deve ser criado sempre com base nos exemplos de modelagem de dados produzidos no item anterior, modelo lógico.

Page 27: Um pouco mais de cardinalidade e Relacionamentos
Page 28: Um pouco mais de cardinalidade e Relacionamentos

Exemplo de projetoUma escola deseja tornar disponível, em uma intranet, as notas dos alunos por matéria e por bimestre, sendo que um semestre terá sempre duas notas bimestrais e a média final do semestre será calculada pelo sistema.Na página, o aluno poderá visualizar o código e a descrição da matéria, o bimestre, a nota e, no final do semestre, a respectiva média final, consultar quais matérias cursa e os respectivos professores. O professor terá acesso às matérias que leciona em cada curso para lançar as notas de cada aluno.A escola poderá extrair relatórios ou pesquisas sobre as matérias que o aluno cursa e, ainda, quais professores lecionam uma determinada matéria. Para que não haja confusão entre matérias com mesmo nome, todas as matérias possuirão um código próprio que as distinguirão por curso e por turma.Assim, matemática I da turma A do curso de Ciência da Computação, terá um código de matéria diferente de matemática I da turma B do mesmo curso. Será diferente também da matemática I de qualquer outro curso. Dessa forma, cada código de matéria terá somente um professor responsável.

Page 29: Um pouco mais de cardinalidade e Relacionamentos

Para iniciar o levantamento de informações, considerando normalmente que neste texto:

• Um substantivo indica a existência de uma entidade;• Um verbo indica a existência de um relacionamento;• Um adjetivo indica a existência de um atributo

(qualifica a entidade);• Um advérbio temporal, qualificando o verbo, indica a

existência de um • atributo de relacionamento.

Page 30: Um pouco mais de cardinalidade e Relacionamentos
Page 31: Um pouco mais de cardinalidade e Relacionamentos

CardinalidadeUma nota pertence a apenas um aluno.Um aluno possui muitas notas.Então: um aluno – muitas notas. Um aluno cursa muitas matérias. Uma matéria é cursada por muitos alunos. Então: muitos alunos – muitas matérias.Uma matéria tem muitas notas. Uma nota pertence a uma matéria. Então: uma matéria – muitas notas. Um professor leciona muitas matérias. Uma matéria é lecionada por apenas um professor. Então: um professor – muitas matérias. Uma turma tem muitas matérias. Uma matéria é ligada a muitas turmas. Então: muitas turmas – muitas matérias.

Page 32: Um pouco mais de cardinalidade e Relacionamentos

• Relacionamento um-para-um: a escolha da chave estrangeira fica a critério do programador em escolher em qual tabela ficará.

• Relacionamento um-para-muitos: a chave estrangeira tem por obrigação de estar na tabela cuja cardinalidade é o "muitos“.

• Relacionamento muitos-para-muitos: escolha de sua chave estrangeira deve estar em uma tabela extra.

Page 33: Um pouco mais de cardinalidade e Relacionamentos
Page 34: Um pouco mais de cardinalidade e Relacionamentos
Page 35: Um pouco mais de cardinalidade e Relacionamentos

Estudo de caso - Locadora de vídeosUma 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. Alguns poucos filmes necessitam duas fitas.Os clientes podem desejar encontrar os filmes estrelados pelo seu ator predileto. Por isso, é necessário manter a informação dos atores que estrelam em cada filme. Nem todo filme possui estrelas. Para cada ator os clientes às vezes desejam saber o nome real, bem como a data de nascimento.A locadora possui muitos clientes cadastrados. Somente clientes cadastrados podem alugar fitas. Para cada cliente é necessário saber seu prenome e seu sobrenome, seu telefone e seu endereço. Além disso, cada cliente recebe um número de associado.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.

Page 36: Um pouco mais de cardinalidade e Relacionamentos
Page 37: Um pouco mais de cardinalidade e Relacionamentos
Page 38: Um pouco mais de cardinalidade e Relacionamentos

Sistema de recepção de encomendas na empresa XXX.

A empresa XXX é uma pequena empresa onde se processam as encomendas da seguinte forma:Sempre que chega uma nota de encomenda esta será validada, verificando-se a existência de produto, através da consulta a uma lista de produtos existentes e da quantidade em estock. Para que uma encomenda seja aceite é necessário, existirem os produtos em quantidade necessária e também ter conhecimento das referências do cliente. Caso não se verifique qualquer uma das condições, a encomenda será rejeitada sendo o respectivo cliente avisado. No caso de a encomenda ser aceita será dado andamento ao processo para que a expedição da mercadoria seja feito o mais rápido possível.