Você está na página 1de 3
Exame de época normal de Base de Dados Universidade do Algarve, 08/Jan/2019 (duragdo: 2h00m) Leia 0 enunciaco com atengio antes de comegar o exame, Nao pode chamar o docente para Ihe ‘ajudar a compreender o enunciado, A interpretacdo do texto faz parte da prova. A cotacao de cada pergunta aparece entre paréntesis. Boa sorte! Pergunta 1. (5 valores) Blabore um diagrama em UML para modelar a seguinte informacao respeitante a uma base de dados para a organizagao de festas. © Uma pessoa tem atributos id (que 6 chave) e nome. Assuma que nao hé pessoas con © mesmo nome. ¢ Uma empresa tem atrilbutos id (que é chave) e nome. Assuma que nao hi empresas ‘com © mesmo nome. © Uma festa tem atributos id (que é chave), data e duragao. 0 atributo data nao pode ser NULL. A festa nfo pode ter mais do que 4 horas de duracio. ‘¢ Uma festa pode ser reservada quer por uma pessoa quer por uma empresa. F necessirio guardar informacao relativa & festa (sua data e duragio) bem como a data em que a festa foi reservada. A data de reserva tem de ser anterior & data de realizagao da festa. Uma festa pode ser reservada por umm organizador (que por sua vez pode ser uma pessoa ou uma empresa), Uma pessoa ou empresa, pode reservar varias festas. * A festa ocorre numa moradia, apartamento, ou numa suite. Estas localizagdes sao iden- tificadas univocamente por um identificador de localizagao idLoc e tem vm atributo morada (uma string). As moradias tem também um atributo piscina (um boaleano) que indica se a moradia tem ou nio piscina © Uma empresa apenas pode reservar uma festa para uma suite. Uma pessoa apenas pode reservar uma festa para uma moradia ou para um apartamento, ‘© Uma pessoa vive numa moradia ou num apartamento. Num apartamento ou moradia podem viver varias pessoas. Pergunta 2. (3 +34+2+3=11 valores) ‘Uma loja online tem uma base de dados relacional com o seguinte esquema: Produto(id, nome, prego) Cliente(id, nome, morada) Encomenda(id, idGliente, data, total) Item (id, idEncomenda, idProduto, quantidade) A chave priméria de cada uma das relagdes ests indicada a sublinhado. Os atributos idCliente, idEncomenda, ¢ idProduto, sto chaves estrangeiras para as relagbes Cliente, Encomenda, Produto, respectivamente. As relagdes Produto ¢ Cliente contém informagao sobre produtos e clientes, respectivamente. A relagao Encomenda representa as encomendas feitas pelos clientes. Cada encomenda tem ‘um ou mais items, cada qual representando um produto e respectiva quantidade encomen- dada, Cada eneomenda tem um atributo total que armazena o valor total da encomenda, ‘€ que supostamente deve corresponder A some prego x quantidade de todos os items dessa ‘encomenda. As seguintes restrigées devem ser mantidas pelo sistema de gestéo de base de dados. Todas as chaves e chaves estrangeiras. ‘¢ Nenhum atributo pode ser NULL. Nao pode haver clientes com 0 mesmo nome. '¢ Nao pode haver produtos com 0 mesmo nome. ‘* prego > 0. (a) Escteva 0 esquema desta base de dacos em SQL. Todos os id’s sAo inteiros, quantidade 6 inteiro, prego e total siio reais, ¢ todos os outros atributos sio strings (b) Eim todas as encomendas, 0 total deve ser igual & soma prego x quantidade de todos os items dessa encomenda. Escreva uma query em SQL que retorne os id’s das encomendas eujo total est incorrecto. (Isto 6, cujo valor para 0 atributo total nao corresponda a soma prego x quantidade de todos os items dessa encomenda.) (c) Escreva uma query em SQL que obtenha a receita total obtida pela loja com a venda do produto "pastel de nata" em todas as encomendas (d) Repita a alinea anterior mas desta vez a query deve apresentar wma listagem com a receita ‘total obtida pela loja, produto a produto, em todas as encomendas. A listagem deve ter duas colunas (nome do produto, total de receita obtida com a venda do producto) e deve ser apresentada por ordem decrescente de receita R(A, B,C, D,E,F,G) que tem o seguinte conjunto de de- funcional nio trivial que possa ser deduzide a partir funcionais apresentado. aes te eee conjunto de relagdes em BCNF. Justifique todos os passos que

Você também pode gostar