I Banco de Dados I

Livre

0
0
57
1 year ago
Preview
Full text

  

I

I

os

d

ad

D

e D

d

anco

B B d

  Modelo Entidade-Relacionamento Fases do Projeto de BD F d P j t d BD

Enunciado de requisitos – entrevista com o

usuário do banco de dados para entender e usuário do banco de dados para entender e documentar seus requerimentos de dados.

Projeto Conceitual – dados os requisitos do Projeto Conceitual dados os requisitos do

  sistema, o esquema conceitual é uma descrição concisa dos requerimentos do descrição concisa dos requerimentos do usuário, usando um modelo de dados, ex, o MER. Ela serve para checar se todos os p

pedidos dos usuários estão sendo atendidos

e se não há conflitos entre eles. Não há preocupação com armazenamento físico. fí

  Fases do Projeto de BD F d P j t d BD

Projeto Lógico – é a descrição das

estruturas de representação da base de estruturas de representação da base de

dados. O modelo conceitual é transformado

em num modelo de dados de

i implementação., ex, modelo relacional. Ele l t ã d l l i l El

resulta no esquema do banco de dados no

modelo de dados de implementação usado modelo de dados de implementação usado

pelo SGBD.

Projeto Físico – é a descrição das estruturas j

  ç

internas de armazenamento, dos esquemas

utilizando a DDL (Data Definition Language).

Modelo de Dados M d l d D d

  É a representação abstrata e simplificada de um sistema real, com o qual se pode explicar ou testar o sistema real com o qual se pode explicar ou testar o seu comportamento. É uma coleção de conceitos que podem ser usados É uma coleção de conceitos que podem ser usados para descrever a estrutura de um banco de dados ( p (tipos de dados, relacionamento e restrições entre os mesmos).

  Modelos permitem a compreensão da estrutura dos dados armazenados e a sua manipulação.

  Modelo de Dados M d l d D d Dividem-se em:

  • – Modelo Conceitual – Modelo de implementação ou baseados em registros
  • – Modelo Físico Modelo Físico

  Projeto Conceitual C it l Projeto Lógico

  Projeto Físico Modelo de Dados M d l d D d

  • – Modelo Conceitual • usados na descrição do banco de dados.
    • Independente de implementação e SGBD.
    • Descrição mais abstrata do banco de dados.
    • É o ponto de partida para o projeto
    • Ex.: MER

  

Modelo de Dados M d l d D d

  • – Modelo de implementação ou baseados em

  registros registros

  • • são usados nas descrições de dados no nível

    lógico (entre o nível conceitual e o físico). lógico (entre o nível conceitual e o físico).
  • Depende do SGBD.
  • Ex. modelo relacional, modelo de redes e modelo hierárquico.
    • – Modelo físico de dados

  • descrevem como os dados são armazenados no computador pela representação da informação tal como formato de registros, ordenação de registros como formato de registros ordenação de registros e caminhos de acesso.

  

A técnica de modelagem mais usada é a

Abordagem Entidade-Relacionamento Ab d E tid d R l i t

  . O modelo de dados é representado (ER) graficamente atraves de um fi t t d Diagrama de Di d .

  Entidade-Relacionamento (DER) Essa abordagem foi criada por Peter Chen (1976) é considerada como um padrão para a modelagem conceitual.

MER MER

  O modelo Entidade-Relacionamento (E-R) tem por base que o mundo real é formado por um conjunto de objetos chamados de entidades e pelo conjunto dos relacionamentos entre esses objetos; O objetivo do modelo E-R é representar a estrutura lógica j p g do banco de dados de uma empresa, especificando o esquema da empresa, quais as entidades e como elas se relacionam entre si.

  O modelo E-R é chamado de Modelagem Conceitual , cujo

objetivo é representar de uma forma abstrata, independente

da implementação em computador, os dados que serão p ç p , q armazenados no banco de dados

  . Conceitos básicos:

  O d l E R t b lh l – O modelo E-R trabalha com alguns conceitos básicos:

  ¾ Atributos ¾ Atributos ¾ Conjuntos de Entidade ¾ Conjuntos de Relacionamento j

Atributos:

  ¾ Simples ou Compostos ¾ Monovalorados ou Multivalorados ¾ Nulos ¾ Derivados ¾ Derivados

  

Atributos At ib t

Classificações de Atributos

  • – obrigatórios vs g opcionais p
  • – monovalorados vs multivalorados
  • – simples vs simples vs compostos compostos

  Atributos At ib t

  Uma entidade é representada por um conjunto de atributos atributos Para cada atributo há um conjunto de valores permissíveis (domínio) permissíveis (domínio)

  • – Um atributo é um dado que é associado a cada

    ocorrência de uma entidade ou de um relacionamento

  Atributos e valores, juntos, descrevem as instâncias/ocorrências de uma entidade

  Atributos At ib t

  Dado que é associado a cada ocorrência de uma entidade ou de um relacionamento. Os uma entidade ou de um relacionamento Os atributos são as propriedades das entidades.

  EMPREGADO fone fone Identificador da entidade: é Identificador da entidade: é nome o atributo ou conjunto de atributos e relacionamentos código cujos valores distinguem j l di ti uma ocorrência da entidade das demais (também chamado de chave).

  

os

t

ut

ib

rib

At At

  Entidade E tid d

  Conjunto de objetos (coisas, tudo que é perceptível, manipulável) da realidade modelada perceptível manipulável) da realidade modelada sobre os quais deseja-se manter informações no banco de dados.

  PESSOA PROFESSOR ALUNO MEIO DE MEIO DE MATERIAL ANIMAL TRANSPORTE As entidades são representadas por retângulos.

  E id d R l i Entidade-Relacionamento ENTIDADE 1

  

RELACIONAMENTO

ENTIDADE 2 ATRIBUTO 1 ATRIBUTO 2 ATRIBUTO 1

Entidade E tid d

  Uma entidade tem um conjunto de propriedades, e os valores para alguns conjuntos dessas e os valores para alguns conjuntos dessas propriedades devem ser únicos.

  Uma entidade pode ser completa, como uma pessoa ou um livro, ou pode ser abstrata como pessoa ou um livro, ou pode ser abstrata como um empréstimo, uma viagem de férias ou um conceito. Estratégias para reconhecer entidades As coisas tangíveis: aquilo que pode ser tocado.

  • – avião, carro, cachorro, gato, livro, caderno.... , , , g , ,

  Funções: todo o tipo de papel, atribuição, classificação, ou outra característica qualquer que para um dado elemento, especifique não sua para um dado elemento, especifique não sua

existência mas sua atuação no ambiente em que está

inserido.

  • – Departamento de uma empresa, o autor de um Departamento de uma empresa, o autor de um livro, um médico

  

Eventos ou ocorrências: são ações ou fatos que uma

vez ocorrendo possuem características próprias vez ocorrendo possuem características próprias sobre as quais podemos fazer alguma referência.

  • – um vôo comercial, um acidente de trânsito, um jogo de futebol... jogo de futebol

Conjunto de Relacionamentos

  ¾ ¾ Um relacionamento é uma associação entre Um relacionamento é uma associação entre

  ( objetos da realidade )

  uma ou várias entidades

  Ex. um relacionamento entre um sócio “João” com o show “S-15”.

  Esse relacionamento especifica que o sócio “João” compareceu ao show que foi designado com o numero compareceu ao show que foi designado com o numero “S-15”.

  ¾ Um conjunto de relacionamentos é um conjunto j j de relacionamentos de mesmo tipo.

  ¾ conjuntos de relacionamentos, representado por um losango .

  Ex.:

  Sócios Shows

  Participa

  Sócios Shows

  Participa

  Empregado Departamento Trabalha Empregado Departamento Trabalha R

  • R o E el

  Exemplo od M Mdl E s1 s2 s3 s4 s5 s3 s4 s5 s1,sh1 s2, sh2 s1,sh3 s4,sh3

  sh1 sh2 sh3 sh1 sh2 sh3

  Diagrama de ocorrências Auto-Relacionamento A t R l i t

  representa uma associação entre ocorrências de uma mesma entidade exige a identificação de papéis

  supervisor (0,1) papéis

  (0,1) supervisionado “um empregado pode ser supervisionado por no

máximo 1 empregado. Um empregado pode máximo 1 empregado. Um empregado pode

supervisionar no máximo N empregados.”

  

to t

ionamen i

ac

el

R Rl

o-

ut

A At

  MER A t R l i t MER – Auto-Relacionamento Com base na figura anterior, construa um diagrama de ocorrências para o relacionamento a seguir:

  Pessoa Casamento

  esposa marido

  Casamento

  Exercício

  Auto-Relacionamento A t R l i t Diagrama de ocorrências para o relacionamento CASAMENTO.

  Solução

  

A função que uma entidade desempenha em um relacionamento é chamada Papel ;

Pode ocorrer de um mesmo conjunto de entidades p participar de um conjunto de relacionamentos mais de uma p j vez em diferentes papeis; O O numero de conjuntos de entidades que participa de um d j t d tid d ti i d

conjunto de relacionamento é também o grau desse

conjunto de relacionamento. Um conjunto de

relacionamento binário é de grau dois ; um relacionamento ternário é de grau três . i io

  Distribuidor

  ár á t tern t to

  çãoç

  Produto

  Distribui ionamen i ac el

  Cidade Exemplo: M t d R t i õ Mapeamento de Restrições O d E R d

  O esquema de E-R de uma empresa pode d definir certas restrições, as quais o conteúdo do banco de dados deve conteúdo do banco de dados deve respeitar.

  

Isso é feito utilizando o Mapeamento de Isso é feito utilizando o Mapeamento de

Cardinalidade

M t d C di lid d Mapeamento de Cardinalidade

  

Expressa o número de entidades as quais outra entidade pode estar associada via um conjunto de relacionamentos. Cardinalidade de Relacionamentos C di lid d d R l i

Cardinalidade máxima: ocorrências de indica a qtde. máxima de entidades que podem estar associadas a uma ocorrência da outra entidade (1 ou n). ( )

  Ex.: A entidade Empregado tem cardinalidade máxima 1 no

relacionamento Trabalha : uma ocorrência de Empregado pode estar p g p

associada a no máximo uma ocorrência de Departamento, ou em outros termos um empregado pode estar trabalhando somente em um departamento .

  A entidade Departamento tem cardinalidade máxima de 120 no A entidade Departamento tem cardinalidade máxima de 120 no relacionamento Trabalha: uma ocorrência de Departamento pode

esta associada a no máximo 120 de Empregado, isto é, um departamento pode ter no máximo 120 empregados trabalhando p p p g nele. Cardinalidade de Relacionamentos C di lid d d R l i t

  Duas cardinalidades máximas são relevantes: relevantes:

  • – A cardinalidade máxima

  1

  • – A cardinalidade máxima “muitos” representada A cardinalidade máxima muitos representada

    pela letra n

  Empregado Trabalha Departamento n

  1 Ocorrência

  Ocorrência referente a referente a departamento departamento empregado Cardinalidade de Relacionamentos C di lid d d R l i t ¾ Cardinalidade Mínima: especifica se a participação de todas as ocorrências das

entidades no relacionamento é obrigatória ou opcional. tid d l i t é b i tó i i l

  ¾ Em um projeto de BD é usada somente duas

cardinalidades mínimas: a cardinalidade mínima cardinalidades mínimas: a cardinalidade mínima e a e a

cardinalidade mínima 1 . ¾ A cardinalidade mínima 1 recebe a denominação de “ associação obrigatória associação obrigatória ” .

  ¾

A cardinalidade mínima 0 recebe a denominação de

“ associação opcional associação opcional ” .

  ¾ A cardinalidade mínima em um Diagrama é anotada junto a ca d a dade á cardinalidade máxima. a

  Cardinalidade Mínima C di lid d Mí i (1,0 ) (1,1 )

  Empregado Mesa

  alocação ç Exercício Exercício

  

Com base na figura acima, construa um diagrama de ocorrências para o relacionamento apresentado. para o relacionamento apresentado ma i ni í Mí M e d ad lid lid na di di ar C C

Mapeamento de Cardinalidade M t d C di lid d

  Para um conjunto de relacionamentos R binário entre os conjuntos de entidades entre os conjuntos de entidades A A e e B B , o o mapeamento das cardinalidades deve seguir uma das instruções a seguir: ç g

  U U 1 1 Um para Um – 1:1 Uma entidade em A está associada no máximo a uma entidade em B , e uma entidade em B está associada a no máximo uma entidade em A entidade em A . a

  1 b1 b2 a

  2 b b3 a

  3 a

  4 b

  4 a

  4 Um para muitos – 1:N U it 1 N

Uma entidade em A está associada a várias entidades em B . Uma

entidade em B , entretanto, deve estar associada no máximo a uma entidade em tid d A A . b1 a

  1 b2 b2 b3 a

  2 b

  4

  

M it it N N M N Muitos para muitos – N:N ou M:N

Uma entidade em

  A está associada a qualquer número de entidades em

  B e uma entidade em

  B está associada a um número qualquer de entidades em

  A . a b1 a

  1 a

  2 b2

  2 a

  3 b3 b a

  4 b

  4 Generalização/Especialização G li ã /E i li ã

  Generalização: resultado da

  CLIENTE união de dois ou mais

  conjuntos de entidades de conjuntos de entidades de nível mais baixo produzindo um conjunto de entidades de nível mais alto. í l i l

  PESSOA PESSOA FÍSICA FÍSICA JURÍDICA JURÍDICA

  E i li ã lt d d Especialização: resultado da

  separação de um conjunto

  de entidades de nível mais alto, formando um conjunto de entidades de nível mais baixo. baixo Generalização/Especialização G li ã /E i li ã

  Herança de propriedades código

  nome

  • – Cada instância da entidade especializada possui, além de especializada possui além de

  CLIENTE suas próprias propriedades, também as propriedades da instância da entidade genérica correspondente

  • Atributos • Relacionamentos
  • Generalizações ou

  FÍSICA JURÍDICA especializações especializações RG sexo

  CNPJ tipo de organização organização Generalização/Especialização G li ã /E i li ã CLIENTE

  Total

  • – Para cada instância da

  t t

  entidade genérica, existe sempre uma instância em

  uma das entidades d tid d

  FÍSICA JURÍDICA especializadas.

  Parcial P i l FUNCIONÁRIO tipo

  • – Nem toda ocorrência da

  p p

  entidade genérica possui entidade genérica possui correspondente em entidade especializada entidade especializada

  MOTORISTA SECRETÁRIA Modelagem E-R M d l E R

  Os atributos não são representados g graficamente, para não sobrecarregar , p g Sócio os diagramas.

  Quando é utilizado um software para Quando é utilizado um software para

  no_Socio no Socio

  a construção de modelos ER, o

  de_Endereco

  software armazena a lista de

  cd_Socio atributos de cada entidade em um “ Dicionário de Dados ”.

  Modelagem E-R M d l E R

  Tipos de identificadores: Ti d id tifi d

  • Identificador simples:

  cada entidade deve possuir um único identificador d tid d d i ú i id tifi d (ex.: cd_cliente)

  • Identificador composto: Identificador composto:

  cada entidade possuir mais de um identificador (ex.: cd_pessoa, cd_departamento)

  • Relacionamento identificador:

  

uma entidade é composta não somente por atributos da

própria entidade, mas também por relacionamentos dos própria entidade mas também por relacionamentos dos quais a entidade participa.

  • Identificadores alternativos:

  

Permite que a entidade possua mais de um identificador

que poder ser chave. (ex.: cd_cliente, nu_CPF)

  M d l E R Modelagem E-R (1,1)

  Relacionamento identificador

  Empregado Dependente

  ( , ) (0,n) no_Empregado no_Dependente cd_Empregado nu_Sequencial N d M d l E R Notação do Modelo E-R Conceito

  Entidade Símbolo

  Relacionamento Atributo Atributo Atributo identificador Relacionamento identificador

  Generalização/Especialização Entidade associativa

Notação – Engenharia de Informações

  O que foi apresentado até agora foi utilizado a notação do Peter Chen. notação do Peter Chen Com a evolução e a criação de ferramentas Com a evolução e a criação de ferramentas CASE, foram criadas outros tipos de notação.

  Engenharia de Informações foi criado na década de 80 por James Martin. de 80 por James Martin Modelagem E-R – James Martin M d l E R J M ti

  Empregado Empregado Departamento Departamento

  Exemplo de Modelagem, onde: muitos

  =

  um

  =

  a oco ê c a do e ac o a e to é opc o a a ocorrência do relacionamento é opcional

  = ; ;

  a ocorrência do relacionamento é obrigatória

  = ; Peter Chen X James Martin P t Ch X J M ti

  Empregado Trabalha Departamento

  (1,1) (0,n)

  Empregado Departamento

  M d l E R Modelagem E-R

  R t ã d tid d F

  Empregado

  Representação de uma entidade Fraca

  Empregado Dependente

  Dependente Modelagem E-R – James Martin M d l E R J M ti

As principais diferenças entre as notações:

  • – Os relacionamentos são representados apenas por Os relacionamentos são representados apenas por uma linha que une as duas entidades;
  • – Somente relacionamentos binários;
  • – A notação de cardinalidade máxima e mínima é

    gráfica, sendo assim: o símbolo mais próximo ao retângulo é a representação da cardinalidade máxima retângulo é a representação da cardinalidade máxima e o mais distante a cardinalidade mínima.

  Modelagem E-R M d l E R Associações de “Um para Um”

  Motorista Táxi

  • Associações de “Um para Muitos”

  Estado Cidade

  M d l E R Modelagem E-R Associações de “Muitos para Muitos” Associações de Muitos para Muitos

  Advogado Processo

  Entidade Associativa E tid d A i ti Processo/ Advogado

  Advogado g Processo

  Em um banco de dados não é possível implementar um Em um banco de dados não é possível implementar um relacionamento M:N , sendo assim foi criado na modelagem a Entidade Associativa .

  Entidade Associativa é a associação entre uma entidade e um relacionamento, ou a associação entre dois relacionamentos. relacionamentos

Exercício E í i

  

A figura apresenta uma entidade e respectivos atributos, muitos deles

opcionais e um multivalorado. Considere que há dois tipos de clientes, pessoas físicas e jurídicas. Pessoas físicas possuem código, CPF, nome, sexo (opcional), data de nascimento (opcional) e telefones (opcionais). sexo (opcional) data de nascimento (opcional) e telefones (opcionais) Pessoas jurídicas possuem código, CNPJ, razão social e telefones (opcionais).

  Apresente um diagrama ER que modele mais precisamente esta

realidade. Explique no que seu diagrama é mais preciso que o mostrado na

abaixo.

  

ão ã

ol

S Sl

Novo documento