banco de dados - bruno morenobrunomoreno.com/wordpress/wp-content/uploads/2012/05/bd_aula4.pdf ·...
Post on 14-Nov-2018
276 Views
Preview:
TRANSCRIPT
Banco de Dados
Aula 4 - Prof. Bruno Moreno
02/09/2011
Modelo de Dados
• Vimos que a idéia não é nova
– Arquitetura, engenharia
• Objetivo
– Representar ou reproduzir a estrutura e o comportamento do original, no todo ou parte
• Não trata instância de entidades
– Conceito semântico
– Tipo entidade
14:01
Modelo de Dados
“Coleção de ferramentas conceituais para descrição de dados, relacionamento entre
eles, semântica e restrições de dados.”
Henry F. Korth
• Descrição formal da estrutura de um banco dedados
14:01
Modelo de Dados
• Modelos propostos:
– Modelo conceitual
– Modelo Lógico
– Modelo Físico
14:01
Projeto Físico
Projeto Lógico
Projeto Conceitual
NíveisDe
Abstração
Minimundo
Modelo de Dados
• Modelo conceitual (projeto conceitual)– Modelo de dados abstrato que descreve a estrutura de
um banco de dados independente de um SGBD
• Modelo lógico (projeto lógico)– Modelo de dados que representa a estrutura dos dados de
um banco de dados • Dependente do modelo do SGBD
• Modelo físico (projeto físico)– Nível de Implementação – Depende do SGBD – ênfase na eficiência de acesso
14:01
Iniciamos na aula passada
EmpregadoNomeEndereço
Modelo de Dados
• Modelo Entidade Relacionamento– Técnica mais utilizada de modelagem
– Tem como objetivo auxiliar na especificação geral do sistema
– O modelo de dados é representado graficamente através de um Diagrama de Entidade-Relacionamento (DER)
– Principais conceitos: (1) entidades, (2) atributos e (3) relacionamentos
– Notação criada por Peter Chen (1976)
14:01
Entidades
• Entidades fortes
– Possuem identificação própria: chave primária
• Entidade fraca
– Não possui identificação própria
• Depende de um relacionamento com outra entidade
• Chave primária é formada pela chave primária da entidade forte (chave estrangeira)
14:01
Funcionário Departamento
• Entidades fortes
– Possuem identificação própria: chave primária
• Entidade fraca
– Exemplo: DEPENDENTE só existe se existir um FUNCIONÁRIO associado
Entidades
14:01
Funcionário Dependente
Funcionário Departamento
POSSUI
Atributos
• Monovalorado: possui apenas um valor
• Multivalorado: possui mais de um valor
• Composto: possui sub-partes
• Derivado: obtido por meio de outros atributos ou relacionamentos
14:01
Idade
Telefones
Endereço
Rua
Cidade
Estado
Tempo_moradia
Atributos chave
• Atributo ou conjunto de atributos (chave composta) que consegue identificar uma única entidade dentro de um conjunto de entidades
• Meio de acesso a uma entidade
• Mínima
14:01
Matrícula
Aluno
NumAgencia
Conta Corrente
NumConta EndereçoX
Atributos chave
• Atributo ou conjunto de atributos (chave composta) que consegue identificar uma única entidade dentro de um conjunto de entidades
• Meio de acesso a uma entidade
• Mínima
14:01
Matrícula
Aluno
NumAgencia
Conta Corrente
NumConta Endereço
Exercício
• Considerando um sistema acadêmico, defina pelo menos 3 atributos para cada uma das entidades abaixo. Se a entidade for forte, defina também o atributo chave
14:01
Aluno
DisciplinaProfessor
Turma
Relacionamentos
• Como expressamos que João trabalha no Departamento de Contabilidade?
14:01
Empregado DepartamentoLotação
JoãoPedroPauloMaria
ContabilidadeFinanceiroJurídicoPessoal
Relacionamentos
• Relacionamento: associação entre várias entidades
• Conjunto de relacionamentos: conjunto de relacionamentos do mesmo tipo
• Exemplos
14:01
Consulta Medico Paciente
Cliente ContaContaCliente
Cidade
Residência
Relacionamentos
• Grau de relacionamento
– Quantidade de entidades diferentes envolvidas
– Binários: grau de relacionamento 2
– Ternários: grau 3
– Quaternários: grau 4
14:01
Relacionamento com grau N > 2 só éjustificável se não puder ser decomposto emrelacionamentos com graus menores e aindamanter a semântica desejada.
Relacionamentos
• Grau de Relacionamento Ternário
– Só deve ser utilizado se não puder ser transformado em duplo
14:01
Aluno DisciplinaMONITORA
Professor MINISTRAAUXILIA
N M
P
1
Q
1
Aluno A auxilia professor P em qual disciplina?
Relacionamentos
• Grau de Relacionamento Ternário
– Só deve ser utilizado se não puder ser transformado em duplo
14:01
Aluno DisciplinaMONITORAN M
Professor
1
• Cardinalidade
– Relacionamento binário
– Quantidade de instâncias envolvidas no relacionamento
– Tipos
• Um para um (1:1)– Uma entidade do tipo A está associada a no máximo uma
entidade do tipo B
Relacionamentos
14:01
• Cardinalidade
– Relacionamento binário
– Quantidade de instâncias envolvidas no relacionamento
– Tipos
• Um para muitos (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 A.
Relacionamentos
14:01
• Cardinalidade
– Relacionamento binário
– Quantidade de instâncias envolvidas no relacionamento
– Tipos
• Muitos para um (N:1)– Uma entidade em A está associada a no máximo uma
entidade em B. Uma entidade em B, entretanto, pode estar associada a um número qualquer de entidades em A
Relacionamentos
14:01
• Cardinalidade
– Relacionamento binário
– Quantidade de instâncias envolvidas no relacionamento
– Tipos
• Muitos para muitos (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
Relacionamentos
14:01
• Restrições: mostram dependência entre entidades
– Total: toda entidade do conjunto de entidades deve se relacionar com a entidade correspondente do relacionamento
– Parcial
Relacionamentos
14:01
Disciplina EmentaPOSSUI
Uma entidade Ementa tem que participar deum relacionamento Possui, ou seja, deve estarassociada a uma entidade Disciplina
Relacionamentos
• Cardinalidade 1 para 1
– Um funcionário gerencia no máximo 1 departamento. Um departamento é gerenciado por no máximo um funcionário
14:01
f1
f2
f3
d1
d2
d3
Funcionário DepartamentoGERENCIA1 1
Relacionamentos
• Cardinalidade 1 para muitos
– Um funcionário está lotado no máximo em 1 departamento. Um departamento tem até N funcionários lotados nele
14:01
f1
f2
f3
f4
f5
d1
d2
d3
Funcionário DepartamentoLOTADOSN 1
Relacionamentos
• Cardinalidade muito para muitos
– Um funcionário participa de vários projetos. Um projeto pode ter a participação de até N funcionários
14:01
f1
f2
f3
p1
p2
p3
Funcionário ProjetoPARTICIPA
Médico PacienteCONSULTA
N N
N N
Relacionamentos
• Cardinalidade máxima e mínima
– Indica obrigatoriedade ou não de participação das entidades
14:01
Funcionário DepartamentoLOTADOS_EM(1,N) (1,1)
Notação de par de cardinalidade(mínima, máxima)
Um funcionário pode estar lotado em um e somente um departamento. Um departamento obrigatoriamente tem de um
até N empregados lotados nele
Relacionamentos
• Cardinalidade máxima e mínima
14:02
Funcionário DepartamentoLOTADOS_EM(1,N) (1,1)
Funcionário ProjetoPARTICIPA_DE(1,N) (1,N)
Funcionário ProjetoCOORDENA(1,1) (0,2)
• Auto relacionamentos
– Relacionamento entre instâncias de uma mesmaentidade
– Requer a identificação de papéis
• Utilizado quando não é clara a participação de um determinado conjunto de entidades em um relacionamento
– “Um funcionário pode ser supervisionado por no máximo 1 Funcionário. Um Funcionário pode supervisionar no máximo N funcionários”
Funcionário
Relacionamentos
14:02
SUPERVISÃO
(0,1)
(0,n)SUPERVISIONADO
SUPERVISORPapéis
• Auto relacionamentos
Relacionamentos
14:02
Pessoa
(0,1)(0,1)
casadoCom
EsposaMarido
RobertoPedroJessica
Ana
marido
esposa
Relacionamentos
• Relacionamentos podem ter atributos
14:02
Funcionário DepartamentoTRABALHA_EM
CPF
Nome
Endereço
Rua
Cidade
Estado
Código
Nome
Telefones
HorasTrabalhadas
Relacionamentos
• Relacionamentos podem ter atributos
14:02
Funcionário DepartamentoTRABALHA_EM
CPF
Nome
Endereço
Rua
Cidade
Estado
Código
Nome
Telefones
HorasTrabalhadas
Relacionamentos
• Relacionamentos podem ter atributos
14:02
Médico PacienteConsulta
dataDaConsultanome celular nome endereço
Dr. PauloDr. Flora
Vania
José
22/10/200705/02/200920/03/2009
esquema
instâncias
Relacionamentos
• Relacionamentos podem ter atributos
14:02
Empregado ProjetoAtuação
funçãonome salario sigla
VaniaPedro
Gabriel
AATOM
Sinpli
coordenadorpesquisadorbolsista
Exercício
• Identifique os relacionamentos no modelo e os atributos do relacionamento (quando houver)
– Cardinalidade
– Nome dos relacionamentos
14:02
Diagrama ER
14:02
Notações: Peter Chan vs James Martin
• A notação de Peter Chan pode ser cansativa para grandes modelos
• Ferramentas CASE: Notação de James Martin
14:02
Conectividade Peter Chan James Martin
1:1
1:N
N:N
1 1
1 N
N M
Notações: Peter Chan vs James Martin
• Principais diferenças
– 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
• O símbolo mais próximo ao retângulo é a representação da cardinalidade máxima e o mais distante a cardinalidade mínima.
14:02
Notações: Peter Chan vs James Martin
14:02
Empregado Departamento
Empregado DepartamentoTrabalha(1,1) (0,n)
Opcional
Notações: Peter Chan vs James Martin
• Um para um
• Um para muitos
• Muitos para muitos
14:02
TáxiMotorista
Estado Cidade
Advogado Processo
Exercício para casa
• Dado o seguinte minimundo, construa um diagrama ER– 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 seqüencialmente (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.
• Entrega: 08/09/11– bruno@dce.ufpb.br
14:02
Bibliografia
• Sistema de Banco de Dados – Elmasri e Navathe
• Material da Profa. Vania Bogorny (UFSC)
• Material do Prof. Clodis Boscarioli (UNIOESTE)
• Material da Profa. Renata Rêgo (IFPE)
14:02
top related