Rilmar Gomes
BANCO DE DADOS
 Modelagem de dados de sistemas típicos através do Modelo
Entidade Relacionamento.
 Conceitos e projeto lógico do Modelo Relacional
 Práticas de Modelagem e Projeto
 Fundamentals of Database Systems
Elmasri, R; Navathe, S
Benjamin Cummings, 1994
 Sistemas de banco de Dados
Korth, H. F.; Silberschatz, A; Sudarshan, S
Makkron Books, 1999
 Introdução a Sistemas de Bancos de Dados
Date, C. J. , Editora Campus, 2000
 “É uma coleção de dados inter-relacionados, representando
informações sobre um domínio específico (conceito geral).
 Representa aspectos do mundo real. Mudanças no mundo
real são refletidas no BD
 É projetado, construído, e mantido para uma proposta
específica. É direcionado a um grupo de usuários/aplicação
 Pode ter qualquer tamanho/complexidade
Mundo Real Solução
Modelo é a representação abstrata e simplificada de uma
determinada realidade. É um conjunto de conceitos para
descrever os dados, de restrições e relacionamento entre
esses dados.
 Sistema Gerenciador de Bancos de Dados (SGBD):
Software construído para facilitar as atividades de definição,
construção e manipulação de bancos de dados;
Consistem em uma coleção de dados inter-relacionados
e de um conjunto de programas para acessá-los
Sistema de Bancos de Dados: Banco de Dados + Software
que o manipula
Prover um ambiente que seja conveniente e eficiente para recuperar e
armazenar informações de Bancos de Dados.
Eliminar ou Reduzir
Redundância e inconsistência de dados
Dificuldade no acesso aos dados
Isolamento dos dados
Anomalias de acesso concorrente
Problemas de segurança
Abstração de dados
Simplifica a interação do usuário com o Sistema
Modelo do
sistema na
mente do
cliente
Modelo de Entidade
do Modelo do
cliente
Representação
Tabular do modelo
de entidade
Server
Tabelas no
disco
Modelo Entidade Relacionamento
Modelo Relacional-Objeto Relacional
Mundo Real
Nível Conceitual
nível lógico
nível físico
 Proporciona uma visão lógica de alto nível dos dados
 É uma descrição abstrata de uma porção do mundo real
 Todos os dados são visualizados como fatos específicos sobre
entidades, relacionamentos e atributos
 Através do MER, podemos ter uma fotografia do sistema
 As entidades, relacionamentos e atributos descrevem as
regras de negócio da empresa
 Definição: modelo baseado na percepção do
mundo real que consiste em um conjunto de
objetos básicos, chamados entidades, e nos
relacionamentos entre esses objetos.
 Objetivo: facilitar o projeto de banco de dados,
possibilitando especificar a estrutura lógica geral.
FUNCIONÁRIO
DEPENDENTE
PROJETO
DEPARTAMENTOendereço
nome
número
salário
supervisor
1 N
possuir
trabalhar
gerenciar
N
1
horas
DataIni
nome
número
1
participar
N
1
DataNiver
nome
N
parentesco
controlar
nome
número
1
N
1
N
localização
Relacionamento
Entidade
Atributo
Entidade Fraca
Entidade
Relacionamento
Atributo
Atributo Identificador
Atributo Multivalorado
Relacionamento Identificador
z
Atributo Composto
...
Atributo Derivado
Participação total de E2 em R
E1 R E2
Cardinalidade 1:N para E1:E2 em RE1 R E21 N
Constraint (min,max) de E em RR E2(min,max)
E1
FUNCIONARIO
STATUS
CLIENTE
CLIENTE
ATOR
GENERO
FILME
FITA
endereço
nome
código
salário
supervisor
4,N
1,1
possui
aluguel
possui
classifica
possui
1,1
código descrição
0,N
nome endereço
1,N
1,N
dt aluguel
dt prev ret
dt retorno
valor
previsto
1,N
multa
valor pago
*
2,N 1,N
1,1
1,N
0,N
1,1
código nome
principal
código descrição
nome
qtde fitas
preço
condição
código
código
código
 ENTIDADE
 Qualquer coisa para a qual desejamos guardar informação
 Conjunto de objetos individuais chamados instâncias
 Uma instância deve ter uma identidade distinta de todas as
outras
 INDEPENDENTES (FORTES)
▪ entidade que existe por si só
▪ NOTAÇÃO : retângulo
 RESTRIÇÕES
 Não pode existir duas entidades no mesmo model
 DICA:
 Geralmente tem mais de um atributo
 O nome = substantivo
DEPENDENTES(FRACAS)
▪ Entidades que dependem de outras para sua existência
(dependência por existência)
▪ Entidades que dependem de outras para sua identificação
(dependência por identificação)
▪ NOTAÇÃO: Retângulo duplo
 RESTRIÇÕES
 Só existe enquanto a entidade forte existir
Funcionário
Dependente
Departamento
Endereço
Nome
IdFunc
Salário
Tem
Trabalho
1
Nome
NomeIdDeptoP-20
1 N
Entidade
Independente
Entidade
Dependente
 Atributo- serve para qualificar a entidade
 Simples
 Multivalorado
 Determinante ou Identificador
 Composto
 Derivado ou Calculado
 Simples
 só pode assumir um único valor elementar
 Exemplo: Nome, Idade, Data de Nascimento
 Notação
Idade
NumRua
CEP
Endereço
Fone
Nome
PESSOAS
 REGRAS
 Começar o nome do atributo com uma inicial maiúscula e estar no
singular
 Distinção entre conjunto de entidades e atributo.
▪ Exemplo:AUTOR para livro de uma biblioteca
▪ AUTOR para uma editora
 Se um conjunto de entidades tem um único atributo, provavelmente
aquele conjunto é atributo de um outro conjunto de entidades.
 Cada atributo deve ocorrer uma única vez em apenas um conjunto de
entidades.
 Desconfiar da modelagem de um conjunto de entidades que tem um
só atributo. Provavelmente, ele é um atributo de outro conjunto.
 Multivalorado
 só pode assumir mais de uma valor
 Exemplo: Fones
 Notação
Idade
Num
Rua
CEP
Endereço
Nome
Fones
PESSOAS
 Determinante
 Identifica unicamente uma entidade da outra
 Lembra o conceito de Chave
 Notação
Idade
NumRua
CEP
Endereço
Nome
Fones
PESSOASCódigo
 Determinante
 Identifica unicamente uma entidade da outra
 Lembra o conceito de Chave
 Notação
Fones
Idade NumRua
CEP
Endereço
Nome
PESSOAS
CPF
IdPessoa
 Composto
 Pode ser dividido em sub atributos
 Exemplo: Endereço
 Notação
Idade NumRua
CEP
Endereço
Nome
Fones
PESSOAS
Código
 Derivado ou Calculado
 Seu valor é gerado a partir do valor de outro atributo
 Exemplo: Data de Nascimento e Idade
 Notação
PACIENTES
Idade
DataNasc Nome
Sexo
*
 RELACIONAMENTO
 É uma ligação entre duas ou mais entidades
 É representado por um losango
 RESTRIÇÕES
▪ Não se pode repetir nomes de relacionamentos
▪ O relacionamento deve ligar, no mínimo, duas
entidades
xx
 DEPENDENTES (FORTES)
 o conceito de entidade dependente e independente é
reforçado pelo tipo de relacionamento
 quando se quer que uma entidade se torne dependente,
cria-se um relacionamento identificador
 INDEPENDENTES (FRACOS)
▪ Conecta entidades fortes e fracas
Funcionário
Dependente
Departamento
Endereço
Nome
Código
Salário
Supervisor
1
N
Tem
Trabalho
1
Nome
NomeCódigo
Código
N
1 NÉ deÉCompostode
Trabalha no
possui
Entidade
Independente
Identificador
Entidade
Dependente
Não Identificador
Papel do
Relacionamento
• É a propriedade do relacionamento que define exatamente
com quantas instâncias uma entidade de um conjunto pode
se relacionar com outras entidades de outro conjunto;
• PODE SER:
• um para um
• um para muitos; e
• muitos para muitos
CARDINALIDADE DO RELACIONAMENTO
CARDINALIDADE 1:1
E1
E2
E3
.
.
.
En
M1
M2
M3
.
.
.
Mn
1 : 1
Médicos Especialidades
MÉDICOS ESPECIALIDADESpossuem
1 1
CARDINALIDADE 1:N
E1
E2
E3
E4
.
.
.
En
M1
M2
M3
.
.
.
Mn
1 : N
Médicos Especialidades
CARDINALIDADE 1:N
P1
P2
P3
P4
.
.
.
Pn
M1
M2
M3
M4
.
.
.
Mn
N : N
Médicos Pacientes
MÉDICOS PACIENTESconsultas
N N
• É a propriedade do relacionamento que define a
obrigatoriedade ou não de uma entidade participar (se
relacionar) de um relacionamento.
•Pode ser:
• total (obrigatória) ou
• parcial (opcional)
PARTICIPAÇÃO DO RELACIONAMENTO
PARTICIPAÇÃO DO RELACIONAMENTO:
TOTAL e PARCIAL
 Situação em que uma entidade se relaciona com outra do mesmo conjunto
Funcionário
Endereço
Nome
Código
Salário
Supervisão
1 N
Supervisionado Supervisor
VENDEDORES vendas PRODUTOS
N N
CLIENTES
N
É dado pelo total de entidades envolvidas no relacionamento
• Binário, ternário, etc.
MÉDICOS PACIENTESconsultas
N N
VENDEDORES vendas PRODUTOS
N N
CLIENTES
N
• É definido pela regra de negócio
VENDEDORES PRODUTOSvendas
N N
CLIENTESvendem compram
N
N N
N
AGREGAÇÃO
• Supondo que um médico faz consultas a pacientes.
MÉDICOS PACIENTESconsultas
N N
AGREGAÇÃO
• Supondo também que nessas consultas o médico pode
fazer solicitações de exames.
• Vários binários = inconsistência
MÉDICOS PACIENTESconsultas
N N
EXAMESsolicita faz
N
N N
N
AGREGAÇÃO
• O ternário obriga que em toda consulta o médico
solicite um exame.
•Todas as entidades devem se relacionar .
•No ternário há a obrigatoriedade das entidades se relacionarem.
MÉDICOS PACIENTESconsultas
N N
EXAMES
N
AGREGAÇÃO
• O MER não permite relacionamento entre relacionamento
MÉDICOS PACIENTESconsultas
N N
EXAMES
N
solicita
N
• O melhor modo para representar a situação anterior é
usando a agregação.
• Na agregação não existe obrigatoriedade na entrevista
para encaminhar um candidato a um cargo
AGREGAÇÃO
AGREGAÇÃO
• A agregação é a abstração que transforma um
relacionamento em uma entidade;
• Evita inconsistências
• Só pode ser em relacionamentos de cardinalidade N:N
• Não possui atributos
AGREGAÇÃO
MÉDICOS PACIENTESconsultas
N N
EXAMES
solicitações
N
N
A Clínica Salva Vidas, atua na área de saúde disponibilizando à sua clientela serviços
médicos de consultas e realização de exames.
Para melhor atender seus clientes, a clínica deseja informatizar seus serviços de
forma a gerar controle sobre os agendamentos e realização de consultas, solicitação e
realização de exames. Para isso, é necessário cadastrar os dados sobre os pacientes, exames,
médicos, especialidades dos médicos e funcionários, entre outros.
Sobre os médicos é necessário que o sistema armazene o CRM, nome, endereço,
fones (residencial e celular) e as especialidades em que atua (oftalmologista, ortopedista,
etc). Cada especialidade também pode ter mais de um médico atuando.
Sobre os pacientes deve-se armazenar o nome, endereço, fones (residencial,
celular e contato). Para se consultar o paciente pode agendar a data e hora da consulta e o
nome do médico. Durante uma consulta o médico captura e repassa ao sistema os sintomas
do paciente e o diagnóstico e ao final desta, ele pode fazer a solicitação de um exame, para
que o paciente faça. É necessário que o sistema mantenha o controle sobre qual médico
solicitou e qual realizou o exame (já que o médico que realiza não é o mesmo que solicita).
Além disso, o paciente pode fazer o exame em outras clínicas. Nesses casos, para a clínica
não interessa em qual clínica foi feito o exame, bastando apenas a informação se foi feito ou
não na mesma. Sobre a realização do exame deve-se guardar a data da realização e o
resultado. Um outro ponto importante, é que o paciente pode ter uma consulta de retorno e
tal fato também deve ser controlado pelo sistema.
Com base nas informações descritas faça a modelagem de dados para o sistema.
Se necessário complemente ou incremente a descrição.
• É a forma de agrupar um conjunto de entidades que
compartilham características comuns.
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
ESPECIALISTA MESTRE
IdTitulação Descrição
TITULAÇÕES
PESSOAS
FÍSICAS
PESSOAS
JURÍDICAS
IdPessoa Endereço
PESSOAS
Nome
CPF CGC
DtaNasc NomeFantasia
• É a forma de agrupar um conjunto de entidades que
compartilham características comuns.
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
PESSOAS
FÍSICAS
PESSOAS
JURÍDICAS
IdPessoa Diagnóstico
PESSOAS
Nome
CPF CGC
DtaNasc NomeFantasia
• É a forma de agrupar um conjunto de entidades que compartilham
características comuns. Restrições:
d: mutuamente exclusivo - quando uma instância da entidade
generalização só pode estar em uma entidade de especialização
o: sobrepostos - quando uma instância da entidade generalização pode
estar em duas ou mais entidade de especialização
total: cada entidade da generalização deve pertencer a pelo menos uma
entidade de especialização
parcial: cada entidade da generalização pode ou não pertencer a uma
entidade de especialização
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
Funcionário
Endereço
Nome
Código
Sexo
Tipo
Consultor
Horas Tx hora
Terceiro
Salário
d
Especialização
Generalização
Total
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
Funcionário
Endereço
Nome
Código
Sexo
Tipo
Consultor
Horas Tx hora
Terceiro
Salário
0
Especialização
Generalização
Parcial
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
FUNCIONARIO
nome
código endereço
sexo
CONSULTOR
horas tx hora
tipo
especialização
generalização
mostra a direção do
relacionamento
superclasse/subclasse
METODOLOGIA PARA PROJETO DE BANCO DE DADOS
• Requerimentos e análise
• Projeto conceitual do banco de dados
• Escolha de um SGBD
• Mapeamento do modelo de dados
• Projeto físico do banco de dados
• Implementação e configuração do banco de dados
Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços
de forma a atender as seguintes necessidades: O sistema deverá controlar o
cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da
programação (filmes, horários, etc) e do pagamento de mensalidades.
Cada pacote possui um preço e o cliente pode escolher uma combinação
dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar.
O valor de sua mensalidade corresponde ao valor total dos pacotes e seu
vencimento será todos os meses no dia em que comprou o primeiro pacote.
O cliente poderá também escolher a quantidade de tv's para instalação do
cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade.
Cada pacote possui um conjunto de canais exclusivos. Um canal é
identificado por um número e seu nome (33- HBO2, por exemplo). A
programação é composta de todos os filmes que serão exibidos, além de
seus horários e datas de exibição. Vale ressaltar que, um filme pode ser
exibido em mais de um horário e em várias datas diferentes.
Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços
de forma a atender as seguintes necessidades: O sistema deverá controlar o
cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da
programação (filmes, horários, etc) e do pagamento de mensalidades.
Cada pacote possui um preço e o cliente pode escolher uma combinação
dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar.
O valor de sua mensalidade corresponde ao valor total dos pacotes e seu
vencimento será todos os meses no dia em que comprou o primeiro pacote.
O cliente poderá também escolher a quantidade de tv's para instalação do
cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade.
Cada pacote possui um conjunto de canais exclusivos. Um canal é
identificado por um número e seu nome (33- HBO2, por exemplo). A
programação é composta de todos os filmes que serão exibidos, além de
seus horários e datas de exibição. Vale ressaltar que, um filme pode ser
exibido em mais de um horário e em várias datas diferentes.
Uma loja de CDs deseja informatizar suas transações de venda e de aluguel de títulos, mantendo cadastros atualizados de
clientes, balconistas, títulos, dos distribuidores que os fornecem e dos gêneros musicais em que estes se classificam.
Entre o cliente e o balconista, as vendas e locações de títulos de CD devem ser armazenadas na base de dados juntamente
com a data em que houve a transação (data de venda e data de locação, respectivamente). Somente para a locação, o
sistema deverá também armazenar a data prevista para a devolução do titulo alugado (data de devolução). É de interesse
da loja, saber, através das informações armazenadas na base de dados, que balconista vendeu ou alugou determinado titulo
para qual cliente.
Eventualmente, um cliente também pode solicitar a encomenda de um CD que não esteja disponível na
loja. As encomendas feitas desta forma são pedidas diretamente para o balconista, mas para a loja somente
é interessante saber qual cliente encomendou determinado titulo e em que data (data da encomenda). Note
que um cliente pode encomendar vários títulos e um título pode ser encomendado por vários clientes.
Normalmente, o processo de encomenda é seguido por uma transação de venda (mas nunca de locação),
caso o(s) pedido(s) do cliente seja(m) atendido(s).
Cada título de CD é classificado somente num gênero musical (pelo menos, aquele gênero que predomina)
dentre os vários que a base de dados mantêm como disponíveis na loja. Além disso, cada título de CD é
fornecido por apenas uma dentre as várias distribuidoras com a qual a loja obedece a contratos de revenda.
Para cada distribuidora é imprescindível, além de outras informações, o nome do vendedor intermediário e
dos telefones para contato.
Um título pode estar disponível somente para venda ou somente para locação. E não se esqueça que,
somente quando da disponibilidade de um CD ser para venda, o seu preço unitário, a quantidade de
unidades vendidas no ato da transação e a sua quantidade, remanescente no estoque, são informações
importantíssimas, além do que, no caso de um título disponível exclusivamente para locação, a sua venda
não é permitida e vice-versa.

Aulas de banco de dados

  • 1.
  • 2.
     Modelagem dedados de sistemas típicos através do Modelo Entidade Relacionamento.  Conceitos e projeto lógico do Modelo Relacional  Práticas de Modelagem e Projeto
  • 3.
     Fundamentals ofDatabase Systems Elmasri, R; Navathe, S Benjamin Cummings, 1994  Sistemas de banco de Dados Korth, H. F.; Silberschatz, A; Sudarshan, S Makkron Books, 1999  Introdução a Sistemas de Bancos de Dados Date, C. J. , Editora Campus, 2000
  • 4.
     “É umacoleção de dados inter-relacionados, representando informações sobre um domínio específico (conceito geral).  Representa aspectos do mundo real. Mudanças no mundo real são refletidas no BD  É projetado, construído, e mantido para uma proposta específica. É direcionado a um grupo de usuários/aplicação  Pode ter qualquer tamanho/complexidade
  • 5.
    Mundo Real Solução Modeloé a representação abstrata e simplificada de uma determinada realidade. É um conjunto de conceitos para descrever os dados, de restrições e relacionamento entre esses dados.
  • 6.
     Sistema Gerenciadorde Bancos de Dados (SGBD): Software construído para facilitar as atividades de definição, construção e manipulação de bancos de dados; Consistem em uma coleção de dados inter-relacionados e de um conjunto de programas para acessá-los Sistema de Bancos de Dados: Banco de Dados + Software que o manipula
  • 8.
    Prover um ambienteque seja conveniente e eficiente para recuperar e armazenar informações de Bancos de Dados. Eliminar ou Reduzir Redundância e inconsistência de dados Dificuldade no acesso aos dados Isolamento dos dados Anomalias de acesso concorrente Problemas de segurança Abstração de dados Simplifica a interação do usuário com o Sistema
  • 9.
    Modelo do sistema na mentedo cliente Modelo de Entidade do Modelo do cliente Representação Tabular do modelo de entidade Server Tabelas no disco
  • 10.
    Modelo Entidade Relacionamento ModeloRelacional-Objeto Relacional Mundo Real Nível Conceitual nível lógico nível físico
  • 11.
     Proporciona umavisão lógica de alto nível dos dados  É uma descrição abstrata de uma porção do mundo real  Todos os dados são visualizados como fatos específicos sobre entidades, relacionamentos e atributos  Através do MER, podemos ter uma fotografia do sistema  As entidades, relacionamentos e atributos descrevem as regras de negócio da empresa
  • 12.
     Definição: modelobaseado na percepção do mundo real que consiste em um conjunto de objetos básicos, chamados entidades, e nos relacionamentos entre esses objetos.  Objetivo: facilitar o projeto de banco de dados, possibilitando especificar a estrutura lógica geral.
  • 13.
  • 14.
  • 15.
    Atributo Composto ... Atributo Derivado Participaçãototal de E2 em R E1 R E2 Cardinalidade 1:N para E1:E2 em RE1 R E21 N Constraint (min,max) de E em RR E2(min,max) E1
  • 16.
    FUNCIONARIO STATUS CLIENTE CLIENTE ATOR GENERO FILME FITA endereço nome código salário supervisor 4,N 1,1 possui aluguel possui classifica possui 1,1 código descrição 0,N nome endereço 1,N 1,N dtaluguel dt prev ret dt retorno valor previsto 1,N multa valor pago * 2,N 1,N 1,1 1,N 0,N 1,1 código nome principal código descrição nome qtde fitas preço condição código código código
  • 17.
     ENTIDADE  Qualquercoisa para a qual desejamos guardar informação  Conjunto de objetos individuais chamados instâncias  Uma instância deve ter uma identidade distinta de todas as outras
  • 18.
     INDEPENDENTES (FORTES) ▪entidade que existe por si só ▪ NOTAÇÃO : retângulo  RESTRIÇÕES  Não pode existir duas entidades no mesmo model  DICA:  Geralmente tem mais de um atributo  O nome = substantivo
  • 19.
    DEPENDENTES(FRACAS) ▪ Entidades quedependem de outras para sua existência (dependência por existência) ▪ Entidades que dependem de outras para sua identificação (dependência por identificação) ▪ NOTAÇÃO: Retângulo duplo  RESTRIÇÕES  Só existe enquanto a entidade forte existir
  • 20.
  • 21.
     Atributo- servepara qualificar a entidade  Simples  Multivalorado  Determinante ou Identificador  Composto  Derivado ou Calculado
  • 22.
     Simples  sópode assumir um único valor elementar  Exemplo: Nome, Idade, Data de Nascimento  Notação Idade NumRua CEP Endereço Fone Nome PESSOAS
  • 23.
     REGRAS  Começaro nome do atributo com uma inicial maiúscula e estar no singular  Distinção entre conjunto de entidades e atributo. ▪ Exemplo:AUTOR para livro de uma biblioteca ▪ AUTOR para uma editora  Se um conjunto de entidades tem um único atributo, provavelmente aquele conjunto é atributo de um outro conjunto de entidades.  Cada atributo deve ocorrer uma única vez em apenas um conjunto de entidades.  Desconfiar da modelagem de um conjunto de entidades que tem um só atributo. Provavelmente, ele é um atributo de outro conjunto.
  • 24.
     Multivalorado  sópode assumir mais de uma valor  Exemplo: Fones  Notação Idade Num Rua CEP Endereço Nome Fones PESSOAS
  • 25.
     Determinante  Identificaunicamente uma entidade da outra  Lembra o conceito de Chave  Notação Idade NumRua CEP Endereço Nome Fones PESSOASCódigo
  • 26.
     Determinante  Identificaunicamente uma entidade da outra  Lembra o conceito de Chave  Notação Fones Idade NumRua CEP Endereço Nome PESSOAS CPF IdPessoa
  • 27.
     Composto  Podeser dividido em sub atributos  Exemplo: Endereço  Notação Idade NumRua CEP Endereço Nome Fones PESSOAS Código
  • 28.
     Derivado ouCalculado  Seu valor é gerado a partir do valor de outro atributo  Exemplo: Data de Nascimento e Idade  Notação PACIENTES Idade DataNasc Nome Sexo *
  • 29.
     RELACIONAMENTO  Éuma ligação entre duas ou mais entidades  É representado por um losango  RESTRIÇÕES ▪ Não se pode repetir nomes de relacionamentos ▪ O relacionamento deve ligar, no mínimo, duas entidades xx
  • 30.
     DEPENDENTES (FORTES) o conceito de entidade dependente e independente é reforçado pelo tipo de relacionamento  quando se quer que uma entidade se torne dependente, cria-se um relacionamento identificador  INDEPENDENTES (FRACOS) ▪ Conecta entidades fortes e fracas
  • 31.
    Funcionário Dependente Departamento Endereço Nome Código Salário Supervisor 1 N Tem Trabalho 1 Nome NomeCódigo Código N 1 NÉ deÉCompostode Trabalhano possui Entidade Independente Identificador Entidade Dependente Não Identificador Papel do Relacionamento
  • 32.
    • É apropriedade do relacionamento que define exatamente com quantas instâncias uma entidade de um conjunto pode se relacionar com outras entidades de outro conjunto; • PODE SER: • um para um • um para muitos; e • muitos para muitos CARDINALIDADE DO RELACIONAMENTO
  • 33.
    CARDINALIDADE 1:1 E1 E2 E3 . . . En M1 M2 M3 . . . Mn 1 :1 Médicos Especialidades MÉDICOS ESPECIALIDADESpossuem 1 1
  • 34.
  • 35.
    CARDINALIDADE 1:N P1 P2 P3 P4 . . . Pn M1 M2 M3 M4 . . . Mn N :N Médicos Pacientes MÉDICOS PACIENTESconsultas N N
  • 36.
    • É apropriedade do relacionamento que define a obrigatoriedade ou não de uma entidade participar (se relacionar) de um relacionamento. •Pode ser: • total (obrigatória) ou • parcial (opcional) PARTICIPAÇÃO DO RELACIONAMENTO
  • 37.
  • 38.
     Situação emque uma entidade se relaciona com outra do mesmo conjunto Funcionário Endereço Nome Código Salário Supervisão 1 N Supervisionado Supervisor
  • 39.
    VENDEDORES vendas PRODUTOS NN CLIENTES N É dado pelo total de entidades envolvidas no relacionamento • Binário, ternário, etc. MÉDICOS PACIENTESconsultas N N
  • 40.
    VENDEDORES vendas PRODUTOS NN CLIENTES N • É definido pela regra de negócio VENDEDORES PRODUTOSvendas N N CLIENTESvendem compram N N N N
  • 41.
    AGREGAÇÃO • Supondo queum médico faz consultas a pacientes. MÉDICOS PACIENTESconsultas N N
  • 42.
    AGREGAÇÃO • Supondo tambémque nessas consultas o médico pode fazer solicitações de exames. • Vários binários = inconsistência MÉDICOS PACIENTESconsultas N N EXAMESsolicita faz N N N N
  • 43.
    AGREGAÇÃO • O ternárioobriga que em toda consulta o médico solicite um exame. •Todas as entidades devem se relacionar . •No ternário há a obrigatoriedade das entidades se relacionarem. MÉDICOS PACIENTESconsultas N N EXAMES N
  • 44.
    AGREGAÇÃO • O MERnão permite relacionamento entre relacionamento MÉDICOS PACIENTESconsultas N N EXAMES N solicita N
  • 45.
    • O melhormodo para representar a situação anterior é usando a agregação. • Na agregação não existe obrigatoriedade na entrevista para encaminhar um candidato a um cargo AGREGAÇÃO
  • 46.
    AGREGAÇÃO • A agregaçãoé a abstração que transforma um relacionamento em uma entidade; • Evita inconsistências • Só pode ser em relacionamentos de cardinalidade N:N • Não possui atributos
  • 47.
  • 48.
    A Clínica SalvaVidas, atua na área de saúde disponibilizando à sua clientela serviços médicos de consultas e realização de exames. Para melhor atender seus clientes, a clínica deseja informatizar seus serviços de forma a gerar controle sobre os agendamentos e realização de consultas, solicitação e realização de exames. Para isso, é necessário cadastrar os dados sobre os pacientes, exames, médicos, especialidades dos médicos e funcionários, entre outros. Sobre os médicos é necessário que o sistema armazene o CRM, nome, endereço, fones (residencial e celular) e as especialidades em que atua (oftalmologista, ortopedista, etc). Cada especialidade também pode ter mais de um médico atuando. Sobre os pacientes deve-se armazenar o nome, endereço, fones (residencial, celular e contato). Para se consultar o paciente pode agendar a data e hora da consulta e o nome do médico. Durante uma consulta o médico captura e repassa ao sistema os sintomas do paciente e o diagnóstico e ao final desta, ele pode fazer a solicitação de um exame, para que o paciente faça. É necessário que o sistema mantenha o controle sobre qual médico solicitou e qual realizou o exame (já que o médico que realiza não é o mesmo que solicita). Além disso, o paciente pode fazer o exame em outras clínicas. Nesses casos, para a clínica não interessa em qual clínica foi feito o exame, bastando apenas a informação se foi feito ou não na mesma. Sobre a realização do exame deve-se guardar a data da realização e o resultado. Um outro ponto importante, é que o paciente pode ter uma consulta de retorno e tal fato também deve ser controlado pelo sistema. Com base nas informações descritas faça a modelagem de dados para o sistema. Se necessário complemente ou incremente a descrição.
  • 49.
    • É aforma de agrupar um conjunto de entidades que compartilham características comuns. HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO ESPECIALISTA MESTRE IdTitulação Descrição TITULAÇÕES PESSOAS FÍSICAS PESSOAS JURÍDICAS IdPessoa Endereço PESSOAS Nome CPF CGC DtaNasc NomeFantasia
  • 50.
    • É aforma de agrupar um conjunto de entidades que compartilham características comuns. HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO PESSOAS FÍSICAS PESSOAS JURÍDICAS IdPessoa Diagnóstico PESSOAS Nome CPF CGC DtaNasc NomeFantasia
  • 51.
    • É aforma de agrupar um conjunto de entidades que compartilham características comuns. Restrições: d: mutuamente exclusivo - quando uma instância da entidade generalização só pode estar em uma entidade de especialização o: sobrepostos - quando uma instância da entidade generalização pode estar em duas ou mais entidade de especialização total: cada entidade da generalização deve pertencer a pelo menos uma entidade de especialização parcial: cada entidade da generalização pode ou não pertencer a uma entidade de especialização HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO
  • 52.
    HERANÇA: GENERALIZAÇÃO EESPECIALIZAÇÃO Funcionário Endereço Nome Código Sexo Tipo Consultor Horas Tx hora Terceiro Salário d Especialização Generalização Total
  • 53.
    HERANÇA: GENERALIZAÇÃO EESPECIALIZAÇÃO Funcionário Endereço Nome Código Sexo Tipo Consultor Horas Tx hora Terceiro Salário 0 Especialização Generalização Parcial
  • 54.
    HERANÇA: GENERALIZAÇÃO EESPECIALIZAÇÃO FUNCIONARIO nome código endereço sexo CONSULTOR horas tx hora tipo especialização generalização mostra a direção do relacionamento superclasse/subclasse
  • 55.
    METODOLOGIA PARA PROJETODE BANCO DE DADOS • Requerimentos e análise • Projeto conceitual do banco de dados • Escolha de um SGBD • Mapeamento do modelo de dados • Projeto físico do banco de dados • Implementação e configuração do banco de dados
  • 56.
    Uma empresa deTV à cabo necessita informatizar alguns dos seus serviços de forma a atender as seguintes necessidades: O sistema deverá controlar o cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da programação (filmes, horários, etc) e do pagamento de mensalidades. Cada pacote possui um preço e o cliente pode escolher uma combinação dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar. O valor de sua mensalidade corresponde ao valor total dos pacotes e seu vencimento será todos os meses no dia em que comprou o primeiro pacote. O cliente poderá também escolher a quantidade de tv's para instalação do cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade. Cada pacote possui um conjunto de canais exclusivos. Um canal é identificado por um número e seu nome (33- HBO2, por exemplo). A programação é composta de todos os filmes que serão exibidos, além de seus horários e datas de exibição. Vale ressaltar que, um filme pode ser exibido em mais de um horário e em várias datas diferentes.
  • 57.
    Uma empresa deTV à cabo necessita informatizar alguns dos seus serviços de forma a atender as seguintes necessidades: O sistema deverá controlar o cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da programação (filmes, horários, etc) e do pagamento de mensalidades. Cada pacote possui um preço e o cliente pode escolher uma combinação dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar. O valor de sua mensalidade corresponde ao valor total dos pacotes e seu vencimento será todos os meses no dia em que comprou o primeiro pacote. O cliente poderá também escolher a quantidade de tv's para instalação do cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade. Cada pacote possui um conjunto de canais exclusivos. Um canal é identificado por um número e seu nome (33- HBO2, por exemplo). A programação é composta de todos os filmes que serão exibidos, além de seus horários e datas de exibição. Vale ressaltar que, um filme pode ser exibido em mais de um horário e em várias datas diferentes.
  • 58.
    Uma loja deCDs deseja informatizar suas transações de venda e de aluguel de títulos, mantendo cadastros atualizados de clientes, balconistas, títulos, dos distribuidores que os fornecem e dos gêneros musicais em que estes se classificam. Entre o cliente e o balconista, as vendas e locações de títulos de CD devem ser armazenadas na base de dados juntamente com a data em que houve a transação (data de venda e data de locação, respectivamente). Somente para a locação, o sistema deverá também armazenar a data prevista para a devolução do titulo alugado (data de devolução). É de interesse da loja, saber, através das informações armazenadas na base de dados, que balconista vendeu ou alugou determinado titulo para qual cliente. Eventualmente, um cliente também pode solicitar a encomenda de um CD que não esteja disponível na loja. As encomendas feitas desta forma são pedidas diretamente para o balconista, mas para a loja somente é interessante saber qual cliente encomendou determinado titulo e em que data (data da encomenda). Note que um cliente pode encomendar vários títulos e um título pode ser encomendado por vários clientes. Normalmente, o processo de encomenda é seguido por uma transação de venda (mas nunca de locação), caso o(s) pedido(s) do cliente seja(m) atendido(s). Cada título de CD é classificado somente num gênero musical (pelo menos, aquele gênero que predomina) dentre os vários que a base de dados mantêm como disponíveis na loja. Além disso, cada título de CD é fornecido por apenas uma dentre as várias distribuidoras com a qual a loja obedece a contratos de revenda. Para cada distribuidora é imprescindível, além de outras informações, o nome do vendedor intermediário e dos telefones para contato. Um título pode estar disponível somente para venda ou somente para locação. E não se esqueça que, somente quando da disponibilidade de um CD ser para venda, o seu preço unitário, a quantidade de unidades vendidas no ato da transação e a sua quantidade, remanescente no estoque, são informações importantíssimas, além do que, no caso de um título disponível exclusivamente para locação, a sua venda não é permitida e vice-versa.