A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

4 Projeto de Banco de Dados Carlos Alberto Heuser.

Apresentações semelhantes


Apresentação em tema: "4 Projeto de Banco de Dados Carlos Alberto Heuser."— Transcrição da apresentação:

1 4 Projeto de Banco de Dados Carlos Alberto Heuser

2 Abordagem ER Capítulo 2 ©Carlos A. Heuser

3 Abordagem Entidade-Relacionamento
Técnica para construir modelos conceituais de bases de dados. Técnica de modelagem de dados mais difundida e utilizada. Criada em 1976, por Peter Chen. ©Carlos A. Heuser 3

4 Abordagem Entidade-Relacionamento
Padrão de fato para modelagem conceitual. Não é única: NIAM/ORM (técnica européia da década de 70) UML (técnica para modelos orientados a objeto) Técnicas de modelagem orientada a objeto (UML) baseiam-se nos conceitos da abordagem ER ©Carlos A. Heuser 4

5 Abordagem Entidade-Relacionamento
Modelo de dados é representado através de um modelo entidade-relacionamento (modelo ER) Modelo ER é representado graficamente diagrama entidade-relacionamento (DER) ©Carlos A. Heuser

6 Conceitos centrais da abordagem ER
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa ©Carlos A. Heuser 6

7 Entidade Entidade Conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no banco de dados ©Carlos A. Heuser 7

8 Entidade – exemplos Sistema de informações industrial: produtos
tipos de produtos vendas compras Sistema de contas correntes: clientes contas correntes cheques agências ©Carlos A. Heuser 8

9 Entidade representa Uma entidade pode representar:
objetos concretos da realidade (uma pessoa, um automóvel) objetos abstratos (um departamento, um endereço) ©Carlos A. Heuser 9

10 Entidade – representação diagramática
Representada através de um retângulo. PESSOA ©Carlos A. Heuser 10

11 Entidade – representação diagramática
Representada através de um retângulo. PESSOA Nome da entidade ©Carlos A. Heuser 11

12 Entidade e instância Para referir um objeto particular fala-se em:
instância ou ocorrência de entidade. ©Carlos A. Heuser 12

13 Entidade e instância - terminologias
Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe ©Carlos A. Heuser 13

14 Entidade e instância - terminologias
Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia adotada no livro ©Carlos A. Heuser 14

15 Entidade e instância - terminologias
Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia adotada em textos acadêmicos em Inglês ©Carlos A. Heuser 15

16 Entidade e instância - terminologias
Há terminologias conflitantes na literatura conjunto elemento do conjunto entidade instância conjunto de entidades classe terminologia de orientação a objetos ©Carlos A. Heuser 16

17 Propriedades de entidades
Entidade isoladamente pouco informa. É necessário atribuir propriedades às entidades Em um modelo ER, propriedades são especificadas através de: Relacionamentos Atributos Generalizações/especializações ©Carlos A. Heuser 17

18 Relacionamento - conceito
Relacionamento Conjunto de associações entre entidades sobre as quais deseja-se manter informações na base de dados ©Carlos A. Heuser 18

19 Relacionamento – representação gráfica
LOTAÇÃO DEPARTAMENTO EMPREGADO ©Carlos A. Heuser 19

20 Relacionamento e instância
Relacionamento é um conjunto de associações entre instâncias de entidades Uma instância (ocorrência) é uma associação específica entre determinadas instâncias de entidade Exemplo (relacionamento LOTAÇÃO): instância de LOTAÇÃO = par específico formado por uma ocorrência de PESSOA e uma ocorrência de DEPARTAMENTO ©Carlos A. Heuser 20

21 Diagrama de ocorrências
p3 p7 p1 entidade p8 p4 p6 p5 EMPREGADO p2 relacionamento p1,d1 p2,d1 p4,d2 p5,d3 LOTAÇÃO entidade d1 d2 d3 DEPARTAMENTO ©Carlos A. Heuser 21

22 Auto-relacionamento PESSOA CASAMENTO ©Carlos A. Heuser 22

23 Papel no relacionamento
Função que uma ocorrência de uma entidade cumpre em uma ocorrência de um relacionamento. PESSOA marido esposa CASAMENTO papel no relacionamento ©Carlos A. Heuser 23

24 Papel no relacionamento
Relacionamentos entre entidades diferentes: não é usual indicar os papéis das entidades LOTAÇÃO DEPARTAMENTO PESSOA ©Carlos A. Heuser 24

25 Auto-relacionamento diagrama de ocorrências
p3 p7 p1 PESSOA p8 p6 p2 p4 p5 marido marido marido CASAMENTO esposa esposa esposa p1,p3 p6,p8 ©Carlos A. Heuser 25

26 Cardinalidade de relacionamentos
Propriedade importante de um relacionamento: Número de ocorrências de uma entidade que podem estar associadas a uma determinada ocorrência de entidade através do relacionamento Chamada de cardinalidade de uma entidade em um relacionamento. Há duas cardinalidades: máxima mínima ©Carlos A. Heuser 26

27 Cardinalidade máxima - valores
Para projeto de BD relacional: não é necessário distinguir entre diferentes cardinalidades máximas > 1 Dois valores de cardinalidades máximas são usados: cardinalidade máxima: 1 cardinalidade máxima não limitado (“muitos”), referida pela letra n ©Carlos A. Heuser 27

28 Cardinalidade máxima no DER
LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 ©Carlos A. Heuser 28

29 Cardinalidade máxima - DER
LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 expressa que a uma ocorrência de EMPREGADO (entidade do lado oposto da anotação) pode estar associada no máximo uma (“1”) ocorrência de DEPARTAMENTO ©Carlos A. Heuser 29

30 Cardinalidade máxima - DER
LOTAÇÃO DEPARTAMENTO EMPREGADO n 1 expressa que não há um limite superior para o número de ocorrências de EMPREGADO associadas a uma ocorrência de DEPARTAMENTO ©Carlos A. Heuser 30

31 Classificação de relacionamentos
Cardinalidade máxima pode ser usada para classificar relacionamentos binários. Relacionamento binário: é aquele cujas instâncias envolvem duas instâncias de entidades. Relacionamentos binários n:n (muitos-para-muitos) 1:n (um-para-muitos) 1:1 (um-para-um) ©Carlos A. Heuser 31

32 Relacionamentos 1:1 PESSOA 1 1 marido esposa CASAMENTO
©Carlos A. Heuser 32

33 Relacionamentos 1:1 EMPREGADO 1 ALOCAÇÃO 1 MESA ©Carlos A. Heuser 33

34 Relacionamentos 1:n INSCRIÇÃO ALUNO n 1 CURSO ©Carlos A. Heuser 34

35 Relacionamentos 1:n EMPREGADO 1 n DEPENDENTE ©Carlos A. Heuser 35

36 Relacionamentos 1:n n EMPREGADO 1 DEPENDENTE Nomenclatura:
uso de verbos entidades dão o nome ©Carlos A. Heuser 36

37 Relacionamentos 1:n EMPREGADO supervisor supervisionado 1 n SUPERVISÃO
©Carlos A. Heuser 37

38 Relacionamentos n:n n ALOCAÇÃO n ENGENHEIRO PROJETO ©Carlos A. Heuser
38

39 Relacionamentos n:n CONSULTA n MÉDICO n PACIENTE ©Carlos A. Heuser 39

40 Relacionamentos n:n n n CAPACIDADE PEÇA FORNECEDOR ©Carlos A. Heuser
40

41 Relacionamentos n:n PRODUTO composto componente n n COMPOSIÇÃO
©Carlos A. Heuser 41

42 Relacionamento ternário
CIDADE DISTRIBUIDOR DISTRIBUIÇÃO PRODUTO ©Carlos A. Heuser 42

43 Cardinalidade de relacionamento ternário
CIDADE DISTRIBUIDOR n 1 DISTRIBUIÇÃO n PRODUTO ©Carlos A. Heuser 43

44 Cardinalidade de relacionamento ternário
CIDADE DISTRIBUIDOR n 1 a cardinalidade “1” refere-se a um par (cidade, fornecedor) DISTRIBUIÇÃO n PRODUTO ©Carlos A. Heuser 44

45 Cardinalidade mínima Cardinalidade mínima
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. ©Carlos A. Heuser 45

46 Cardinalidade mínima Para fins de projeto de BD relacional, são consideradas apenas duas cardinalidades mínimas: cardinalidade mínima 0 cardinalidade mínima 1 Denominação alternativa: cardinalidade mínima 0 = “associação opcional” cardinalidade mínima 1 = “associação obrigatória” ©Carlos A. Heuser 46

47 Cardinalidade mínima - DER
EMPREGADO (0,1) ALOCAÇÃO e1,m1 e3,m6 e4,m4 e2,m2 (1,1) MESA m1 m6 m4 m3 m2 m5 ©Carlos A. Heuser 47

48 Cardinalidade mínima - DER
EMPREGADO (0,1) ALOCAÇÃO cardinalidade mínima e1,m1 e3,m6 e4,m4 e2,m2 (1,1) MESA m1 m6 m4 m3 m2 m5 ©Carlos A. Heuser 48

49 Exemplo - entidades e relacionamentos
PRÉ-REQUIS liberada liberadora (0,n) (0,n) RESPONSÁVEL DEPARTAMENTO DISCIPLINA (0,n) (1,1) (0,n) DISC-CURSO (0,n) INSCRIÇÃO (0,n) ALUNO (1,1) CURSO ©Carlos A. Heuser 49

50 Atributo Atributo Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento ©Carlos A. Heuser 50

51 Atributo Atributo Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento PROJETO tipo código nome ©Carlos A. Heuser 51

52 Atributos com cardinalidade
Cardinalidade mínima: atributo obrigatório (cardinalidade mínima “1”) cada entidade possui no mínimo um valor associado atributo opcional (cardinalidade mínima “0”) Cardinalidade máxima: atributo monovalorado (cardinalidade máxima “1”) cada entidade possui no máximo um valor associado atributo multivalorado (cardinalidade máxima “n”) ©Carlos A. Heuser 52

53 Atributo com cardinalidade
CLIENTE telefone (0,n) código nome atributo obrigatório e monovalorado - (1,1) é o default ©Carlos A. Heuser 53

54 Atributo com cardinalidade
CLIENTE telefone (0,n) código atributo opcional e multivalorado nome ©Carlos A. Heuser 54

55 Atributo em relacionamento
ATUAÇÃO (1,n) (0,n) ENGENHEIRO PROJETO Código Nome Função Código Título ©Carlos A. Heuser 55

56 Atributo em relacionamento 1:n
nº de parcelas (0,1) FINANCIAMENTO (0,n) FINANCEIRA VENDA taxa de juros ©Carlos A. Heuser 56

57 Identificador de entidade
Cada entidade deve possuir um identificador Identificador de entidade = conjunto propriedades (atributos, relacionamentos) de uma entidade cujos valores servem para distinguir uma ocorrência da entidade das demais ocorrências da mesma entidade ©Carlos A. Heuser 57

58 Atributo identificador
código PESSOA nome endereço capacidade PRATELEIRA número do corredor número da prateleira ©Carlos A. Heuser 58

59 Relacionamento identificador
número de sequência código nome nome (1,1) (0,n) EMPREGADO DEPENDENTE entidade fraca ©Carlos A. Heuser 59

60 Relacionamento identificador
número de sequência código nome nome (1,1) (0,n) EMPREGADO DEPENDENTE Observar a linha mais densa ©Carlos A. Heuser 60

61 Relacionamento identificador (recursão)
GRUPO código (1,1) (0,n) EMPRESA número da empresa (1,1) (0,n) FILIAL número da filial ©Carlos A. Heuser 61

62 Identificador de relacionamento
Uma ocorrência de relacionamento diferencia-se das demais do mesmo relacionamento pelas ocorrências de entidades que dela participam. ALOCAÇÃO n ENGENHEIRO n PROJETO ©Carlos A. Heuser 62

63 Relacionamento com atributo identificador
CONSULTA (1,n) MÉDICO (0,n) PACIENTE data/hora ©Carlos A. Heuser 63

64 Generalização/especialização
Conceito permite: atribuir propriedades particulares a um subconjunto das ocorrências (especializadas) de uma entidade genérica. ©Carlos A. Heuser 64

65 Generalização/especialização
(1,1) (0,n) FILIAL CLIENTE nome código PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 65

66 Generalização/especialização
(1,1) (0,n) CLIENTE nome FILIAL código Símbolo da generalização-especialização PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 66

67 Generalização/especialização
Entidade genérica (1,1) (0,n) CLIENTE nome FILIAL código PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 67

68 Generalização/especialização
(1,1) (0,n) CLIENTE nome FILIAL código Entidade especializada PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 68

69 Generalização/especialização
(1,1) (0,n) CLIENTE nome FILIAL código Herda as propriedades da entidade genérica PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 69

70 Generalização/especialização
(1,1) (0,n) CLIENTE nome FILIAL código Identificador somente na entidade genérica PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 70

71 Generalização/especialização (recursão)
VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 71

72 Generalização/especialização (recursão)
VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO Herança múltipla AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 72

73 Generalização/especialização (recursão)
A árvore de herança deve ter uma única entidade raiz, que define o identificador. VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 73

74 Generalização/especialização (recursão)
A árvore de herança deve ter uma única entidade, que define o identificador. Identificador de veículo definido aqui VEÍCULO VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 74

75 Generalização/especialização (recursão)
Caso proibido: Herança de múltiplos identificadores. VEÍCULO TERRESTRE VEÍCULO AQUÁTICO AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 75

76 Generalização/especialização (recursão)
Caso proibido: Herança de múltiplos identificadores. VEÍCULO TERRESTRE VEÍCULO AQUÁTICO Qual seria o identificador desta entidade? AUTOMÓVEL VEÍCULO ANFÍBIO BARCO ©Carlos A. Heuser 76

77 Especialização total CLIENTE nome código
indica que todo CLIENTE é ou PESSOA FÍSICA ou PESSOA JURíDICA t PESSOA FÍSICA PESSOA JURÍDICA CIC sexo CGC tipo de organização ©Carlos A. Heuser 77

78 Especialização parcial
FUNCIONÁRIO indica que nem todo FUNCIONÁRIO é MOTORISTA ou SECRETÁRIA tipo de funcionário p MOTORISTA SECRETÁRIA ©Carlos A. Heuser 78

79 Especialização parcial
necessário em especialização parcial FUNCIONÁRIO tipo de funcionário p MOTORISTA SECRETÁRIA ©Carlos A. Heuser 79

80 Especialização não exclusiva (compartilhada)
Uma instância de PESSOA pode aparecer em mais de uma de suas especializações PESSOA c PROFESSOR FUNCIONÁRIO ALUNO ©Carlos A. Heuser 80

81 Tipos de generalizações/especializações
Total (t) Parcial (p) Exclusiva (x) xt xp Compartilhada (c) ct cp 81

82 Entidade associativa Modificar modelo:
Adicionar a informação de que medicamentos foram prescritos em uma consulta. CONSULTA n MÉDICO n PACIENTE ©Carlos A. Heuser 82

83 Incluindo o relacionamento de PRESCRIÇÃO
CONSULTA n n MÉDICO PACIENTE PRESCRIÇÃO liga com? n PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 83

84 Substituindo relacionamento por entidade
MÉDICO PACIENTE (1,1) (1,1) n n CONSULTA n PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 84

85 Entidade associativa CONSULTA n n MÉDICO PACIENTE entidade associativa
PRESCRIÇÃO n MEDICAMENTO ©Carlos A. Heuser 85


Carregar ppt "4 Projeto de Banco de Dados Carlos Alberto Heuser."

Apresentações semelhantes


Anúncios Google