PBD - Bases de Dados - Modelação de Dados
Objectivos: Modelo Entidade-Relacionamento (ER).
Entidades
Universo a considerar
Considere um modelo simplificado para o universo de uma
empresa de organização de eventos.
As entidades em causa e respectivos atributos consistem em:
- FUNCIONÁRIO da empresa: nº CC, nome, data de nascimento, idade, cargo, números de telefone para contacto, e endereço de email opcional.
- ESPAÇO para a realização de eventos com código único, nome, e morada expressa em termos de rua, nº na rua, andar opcional, localidade e código postal.
- EVENTO organizado pela empresa: com código único, nome, data de início, e data de fim.
Exercícios
- Apresente uma descrição das entidades-tipo usando a sintaxe textual do modelo ER.
- Identifique para cada entidade-tipo quais são os atributos chave e classifique todos os atributos quanto ao tipo de domínio: simples/composto, valor-único/multi-valor, base/derivado, definido/opcional.
- Dê exemplos na forma textual de pelo menos 2 entidades (instâncias) para cada uma das entidades-tipo FUNCIONÁRIO e ESPAÇO.
- Apresente em seguida a representação das entidades-tipo na forma de diagrama ER.
Relacionamentos
Universo a considerar
Considere os seguintes relacionamentos entre entitidades no universo da empresa de gestão de eventos:
- Cada funcionário trabalha apenas em um único espaço de eventos, e pode ter um supervisor.
- Cada espaço de eventos é gerido por um dos funcionários.
- Cada evento pode ter lugar em um ou mais espaços, tendo cada alocação de espaço a evento uma hora de início e uma hora de fim de ocupação. Poderá haver espaços sem eventos associados e outros a acolher múltiplos eventos.
Exercícios
- Apresente os relacionamentos ER implícitos na forma textual.
- Para cada relacionamento identifique as restrições de cardinalidade (1:1, 1:N, N:1, M:N) e participação (parcial/total) e resuma essas restrições na forma estrutural (min,max) para cada entidade-tipo partipante.
- Apresente as relacionamentos e restrições estruturais sob a forma de diagrama ER.
BD - Empresa de organização de eventos
Considere um fragmento das tabelas FUNCIONÁRIO e ESPAÇO para uma BD relacional da empresa de organização de eventos.
FUNCIONÁRIO
NumCC |
Nome |
Espaço |
Supervisor |
... |
12345678 |
José Silva |
CP |
12388455 |
... |
12388455 |
Maria Silva |
CP |
NULL |
... |
10345553 |
Mateus Duarte |
TR |
18923444 |
... |
18923444 |
Fátima Lopes |
TR |
NULL |
... |
22444552 |
Roberta Rodrigues |
CP |
12345678 |
... |
ESPAÇO
CodEspaço |
Nome |
Gestor |
... |
CP |
Coliseu do Porto |
12388455 |
... |
TR |
Teatro Rivoli |
18923444 |
... |
- Qual lhe parecem ser as chaves primárias das tabelas FUNCIONÁRIO e ESPAÇO e que atributos em cada tabela são chaves externas?
- Tendo em conta a caracterização de chaves primárias/externas para FUNCIONÁRIO e ESPAÇO e assumindo o estado da BD ilustrado acima, explique para cada uma das seguintes operações sobre a BD que tipo
de restrições de integridade são violadas:
- INSERE FUNCIONÁRIO(ABCDEF, Roberto Pires, CP, 12345678,...)
- INSERE FUNCIONÁRIO(12345678, Roberto Pires, CP, 22444552,...)
- INSERE FUNCIONÁRIO(23884312, Roberto Pires, CP, 12345679,...)
- INSERE ESPAÇO(NULL,Null All Night, ...)
- REMOVE ESPAÇO(CP)
- REMOVE FUNCIONÁRIO(12345678)
- REMOVE FUNCIONÁRIO(18923444)
- ACTUALIZA FUNCIONÁRIO(22444552, Espaço → XPTO)
- ACTUALIZA ESPAÇO(CP,Nome → NULL)
- ACTUALIZA ESPAÇO(TR,Gestor → 12345679)
Tendo como base o modelo ER para a BD abaixo converta-o para
um modelo relacional (apenas implícito em parte para os conteúdos das tabelas FUNCIONÁRIO e ESPAÇO). Indique apropriadamente as chaves primárias e externas para cada tabela que considerar.

Suponha que a BD tem de ser alterada por forma a que as alocações de eventos sejam feitas em termos de salas de espaços, em vez do espaços inteiro, e apresente as mudanças necessárias aos modelos ER e relacional iniciais. Modele uma sala em um espaço
como entidade fraca, em correspondência ao facto de uma sala pertencer a um espaço e na assunção de que uma sala tenha um código que é único (chave parcial) apenas no contexto do espaço a que pertence (o mesmo identificador poder ser usado para uma sala de outro espaço). A sala deve ter também uma descrição textual associada.