1. Considere as seguintes tabelas:
A
a1 a2 a3
B b1 b2 a3
1
1
1
1
3
1
2
1
1
2
2
2
3
1
1
3
1
2
4
2
2
Indique qual a tabela obtida pela execução da expressão:
C? ( (? a2,b1(B)) ? (? a1>10(A)) )
b3
4
6
8
C
2. Considere as seguintes tabelas:
A
a1 a2 b3
B b1 b2 b3
1
1
1
1
3
1
2
1
1
2
2
2
3
1
1
3
1
2
4
2
2
Indique qual a tabela obtida pela execução da expressão:
C? (? b1,b2,b3,a2 (? b1>0 (B ? (? b3<2(A)))))
C
b4
4
6
8
3. Considere as seguintes tabelas:
A
a1
1
2
3
4
a2
1
1
1
2
a3
4
3
2
1
B
b1
0
1
2
3
b2
2
2
1
0
b3
4
4
6
6
C
c1
1
2
3
c2
3
2
1
a3
1
2
2
b3
4
6
8
C
c1
0
1
2
3
c2
2
2
1
0
a1
4
4
6
6
Indique qual a tabela obtida pela execução da expressão:
D? ? a2,b1,c2( (A) ? (? b1>=0(B)) ? (? c2>1(C)) )
D
4. Considere as seguintes tabelas:
A
a1
2
4
6
a2
3
2
1
a3
1
2
2
a4
4
6
8
B
b1
1
2
3
4
c1
1
1
1
2
c2
4
3
2
1
Indique qual a tabela obtida pela execução da expressão:
D? (? c1>=0 ( (? b1,c1(B)) ? (? c1>0(C)))) ? (? a1,a2,a4,a3 (? a2=2(A)))
D
5. Escreva utilizando álgebra relacional a expressão equivalente a: ”SELECT
DISTINCT nome, morada, tel FROM Clientes WHERE morada = ‘BRAGA’ ”.
6. Escreva utilizando SQL a expressão equivalente a: ? a1>10 ? b1>10 (? a1,a2,b1(A))
7. Considere o funcionamento de um clube de futebol.
a) Elabore um esquema, de uma base de dados para o clube (diagrama E-R e
esquema conceptual), tendo em atenção os objectivos:
i) manter informação relativa aos sócios;
ii) manter informação relativa aos jogadores;
iii) a possibilidade de se saber a situação relativamente ao pagamento de
cotas de cada sócio;
iv) a possibilidade de se saber o numero de golos marcados e faltas
cometidas por cada jogador; e
v) a possibilidade de se saber quais os jogadores com mais tempo de
jogo.
b) Apresente na linguagem SQL os comandos que permitem responder aos
objectivos iv) e v).
O processo de Normalização da informação surge na sequência do aparecimento
do modelo relacional de base de dados, devido à necessidade de organizar os dados
por forma a que estes possam ser tratados relacionalmente.
Tendo em atenção a informação representada nos seguintes quadros, apresente o
esquema conceptual de uma base de dados relacional adequada para
armazenagem dessa informação.
1. Informação respeitante a vendas de uma tabacaria.
cod_artigo
123
001
123
911
923
artigo
Maria
SG LIGHTS
Maria
Expresso
Publico
cod_tipo
r
t
t
j
j
tipo
Revista
Tabaco
Revista
Jornal
Jornal
valor
150
350
150
400
250
cod_fornecedor
001
034
001
001
001
fornecedor
Imp, SA
A Tabaqueira
Imp, SA
Imp, SA
Imp, SA
categoria
Ligeiro
Ligeiro
Todo-Terreno
Ligeiro
Ligeiro
matricula
25-63-AB
68-34-CV
52-74-FF
31-57-UX
56-81-HK
2. Informação respeitante a sócios de um clube automóvel.
Num_socio
100
125
100
852
953
nome
Maria
José
Maria
António
Ana
morada
Braga
Porto
Braga
Barcelos
Braga
marca
Audi
Renault
Nissan
Ford
Renault
modelo
A6
Clio
Patrol
Puma
Clio
3. Informação respeitante a livros em armazém numa livraria.
título
Viagens na Tua Terra
Os Incas
O Insustentável peso do Ser
A Arte da Rega
Memorial do Momento
código_tipo
001
003
001
051
003
designação
Ficção
Romance
Ficção
Teatro
Romance
código_editora
007
012
011
007
007
editora
Bond e Filhas sa.
M.& Soft. Lda
L.& Lux. Lda.
Bond e Filhas sa.
Bond e Filhas sa.
quantidade
120
45
1
0
33
4. Informação respeitante a produtos à venda numa loja de Informática com referência
ao seu nome, tipo e respectivo fabricante.
Codigo
a231
d453
a456
r432
d342
...
Artigo
PC Multimédia K9
CD-R 74
Advanced Server X11
NORTON AntiVírus
Tinteiro preto HP
...
tipo
PC
C
PC
S
C
...
Descrição tipo
Computador
Consumível
Computador
Software
Consumível
...
Fabricante
COMPAQ
BASF
HP
NORTON
HP
...
1. Considere as seguintes relações:
Livros = {titulo, código_tipo, código_editora, quantidade}
Tipos = {código_tipo, designação}
Editoras = {código_editora, editora, morada, código_postal}
Cod_Postais = {código_postal, localidade}
Pretende-se que:
i)
Construa a relação em álgebra relacional que permita a identificação dos livros publicados
por editoras do “PORTO”;
ii)
Construa a relação em álgebra relacional que permita a identificação dos livros do tipo
“Romance”, editados pela “Caminho” e com uma quantidade em armazém superior a 20;
2. As seguintes relações, pertencem ao sistema de informação de uma oficina de reparação automóvel.
Carro = {marca, modelo, potência}
Veiculo = {matricula, marca, modelo, cor, ano}
Cliente = {cod_cli, nome, morada, tel}
Reparação = {num_rep, cod_cli, matricula, data, motivo}
Pretende-se que:
i)
Construa uma expressão, utilizando álgebra relacional, que permita a identificação dos
clientes (nome) que têm carros com mais de 200cv de potência de cor preta.
ii)
Traduza para SQL, a expressão da alínea anterior.
iii)
Construa uma expressão, utilizando álgebra relacional, que permita a identificação dos
clientes (nome, morada) cujos veículos são do modelo “Clio” e têm mais de 5 anos de idade.
iv)
Traduza para SQL, a expressão da alínea anterior.
3. Considere as seguintes relações respeitante à base de dados dos alunos de uma escola:
Turmas = {cod_turma, Ano_escolaridade}
Alunos = {numero, cod_turma, nome, idade, morada, localidade}
Disciplinas = {discip, nome_disciplina}
Notas = {numero, cod_turma, discip, nota}
Faltas = {numero, cod_turma, discip, num_faltas}
i)
ii)
iii)
iv)
v)
vi)
vii)
viii)
Construa uma expressão, utilizando álgebra relacional, que permita a geração de uma
listagem dos alunos com indicação da respectiva nota e número de faltas por disciplina.
Traduza para SQL, a expressão da alínea anterior.
Construa uma expressão, utilizando álgebra relacional, que permita a geração de uma
listagem dos alunos da turma A, do 9º ano, com positiva à disciplina de “FISICA e
QUÍMICA ”.
Traduza para SQL, a expressão da alínea anterior.
Construa, utilizando SQL, a expressão que permita a geração de uma listagem em que
conste as turmas e a média das notas atribuídas aos alunos dessa turma. esta listagem deverá
ser apresentada por ordem decrescente da média das notas.
Construa, utilizando SQL, a expressão que permita a indicação do somatório das faltas de
todos os alunos.
Construa, utilizando SQL, a expressão que permita alterar o número de faltas do aluno nº 23
da turma B à disciplina FQ para 3.
4. Considere as seguintes relações respeitante à base de dados de uma clínica:
Utentes = {Num_sns, nome, morada, codigo_postal}
Consultas = {cod_med, num_sns, data, hora}
Médicos = {cod_med, Nome, especialidade}
Cod_Postais = {código_postal, localidade}
Pretende-se que:
i)
Construa, utilizando SQL, a expressão que permita a identificação dos utentes que tiveram
consultas com médicos da especialidade “pediatria”;
ii)
Construa, utilizando SQL, a expressão que permita a identificação dos utentes que tiveram
consultas com médicos da especialidade “dermatologia” em datas anteriores a 01-01-2001;
iii)
Construa, utilizando SQL, a expressão que permita a identificação das localidades dos
utentes que tiveram consultas no mês de Março de 2001;
iv)
Construa, utilizando SQL, a expressão que permita alterar o nome do utente com o num_sns
= 1352463 de Maria José para José Maria.
5. Considere as seguintes relações:
Fornecedores = {código, designação, cod_postal}
Tipos = {tipo, designação}
Artigos = {código, designação, tipo, cod_for, custo}
Cod_Postais = {cod_postal, localidade}
Pretende-se que:
i)
Construa, utilizando SQL, a expressão que permita a identificação dos artigos dos
fornecedores da localidade “BRAGA” cujo custo é inferior a mil escudos;
ii)
Construa, utilizando SQL, a expressão que permita a identificação dos fornecedores que
fornecem artigos do tipo “informática”;
6. Considere as seguintes relações:
Editoras = {código_editora, editora}
Tipos = {código_tipo, designação}
Revistas = {título, código_tipo, código_editora, quantidade}
Pretende-se que:
i)
Construa, utilizando SQL, a expressão que permita a identificação das revistas do tipo
Desporto da editora designada por ABC;
ii)
Construa, utilizando SQL, a expressão que permita a identificação da quantidade das
revistas do tipo Social.
7. Considere as seguintes relações:
Jogadores = {numero, nome, código_país, idade, golos}
Países = {código_país, país, código_continente}
Continentes = {código_continente, continente}
Pretende-se que:
i)
ii)
Construa a relação em álgebra relacional que permita a identificação dos jogadores do
continente “Europa”;
Construa a relação em álgebra relacional que permita a identificação dos jogadores com
menos de 20 anos que já tenham marcado mais do que 100 golos;
Download

1. Considere as seguintes tabelas: A a1 a2 a3 B b1 b2 a3 b3 1 1 1 1