Laboratório de Banco de Dados – PB1 – 11/04/05

Propaganda
*
UNIP – 1o. Sem. 2011
Modelo Relacional – Exercícios
1) Considere as afirmações abaixo com relação a tabelas em um Modelo de Dados Relacional:
1- Um conjunto de atributos de uma tabela é uma Chave Candidata se ele identifica de forma única cada linha da tabela e é
mínimo nessa condição.
2- Uma Chave Candidata composta por mais de uma coluna não pode ser escolhida como Chave Primária de uma tabela por
que uma Chave Primária tem que ser simples.
3- Chave Estrangeira em uma tabela é um atributo ou conjunto de atributos que possui como domínio de valores os valores da
Chave Primária de uma tabela.
Pode-se afirmar que:
a) Todas as afirmações são verdadeiras
b) Todas as afirmações são falsas
c) Somente a afirmação 1 é falsa
d) Somente a afirmação 2 é falsa
e) Somente a afirmação 3 é falsa
2) O controle de integridade referencial relaciona duas chaves, em duas tabelas, sendo:
a) Chave alternativa e chave primária
b) Chave estrangeira e chave primária
c) Chave desnormalizada e chave estrangeira
d) Chave derivada e chave estrangeira
e) Chave calculada e chave primária
3) Considere a tabela
Empregado ( Matricula, Nome, CPF, Data_Nascimento, Codigo_Cargo, Nome_Cargo,
Salario, Codigo_Departamento, Nome_departamento)
onde Matricula e CPF são chaves candidatas, e as seguintes dependências funcionais:
1- Matricula  Nome
2- Codigo_Departamento  Nome_Departamento
3- Codigo_Cargo  Nome_Cargo
Pode-se afirmar que:
a) 1-, 2- e 3- são dependências funcionais parciais
b) Apenas 2- e 3- são dependências funcionais que devem ser eliminadas para que a Tabela possa ficar em 3ª. Forma
Normal
c) Todas as 3 dependências funcionais devem ser eliminadas para que a Tabela possa ficar em 3ª. Forma Normal
d) A tabela Empregado, como apresentada, está em 3ª. Forma Normal
e) Apenas 2- e 3- são dependências funcionais corretas. 1- não é uma dependência funcional
4) Considere o esquema de banco de dados relacional apresentado a seguir, formado por 4 tabelas, que representa o conjunto
de estudantes de uma universidade que podem, ou não, morar em repúblicas (moradias compartilhadas por estudantes).
A tabela Estudante foi modelada como uma especialização da tabela Pessoa. Considere que os atributos grifados
correspondam à chave primária de cada tabela e os atributos que são seguidos da palavra referencia sejam chaves
estrangeiras.
Pessoa(IdPessoa, Nome, Endereco)
FonePessoa(IdPessoa referencia Pessoa, DDD, Prefixo, Numero)
Republica(IdRep, Nome, Endereço)
Estudante(RA, Email, IdPessoa referencia Pessoa, IdRep referencia Republica)
Suponha que já existam as seguintes linhas no banco de dados:
Pessoa(l, 'José Silva', 'Rua Flores,20');
Republica(20, 'Várzea', 'Rua Chaves, 2001')
Qual opção apresenta apenas linhas válidas para esse esquema de banco de dados relacional? Obs.: null indica nulo, ausência
de valor.
1
*
a) Estudante (10, '[email protected]', null, 20);
FonePessoa(10, '019', '3761', '1370')
b) Estudante (10, '[email protected]', 1, null);
FonePessoa(10, '019', '3761', '1370')
c) Estudante (10, '[email protected]', 1, 20);
FonePessoa(l0, null, '3761', '1370')
d) Estudante (10, '[email protected]', 1, 50);
FonePessoa(l, '019', '3761', '1370')
e) Estudante (10, '[email protected]', 1, null);
FonePessoa(l, '019', '3761', '1370')
5) Estão definidas as seguintes tabelas
Departamento (Codigo, Nome)
Empregado (Matricula, Nome, Depto)
onde Depto é uma chave estrangeira opcional que referencia Departamento.
As tabelas contém as seguintes t-uplas:
Departamento
( 1, Contabilidade)
( 2, Compras)
( 3, Produção)
Empregado
( 1, Jose Silva, 1)
( 2, Joao Almeida, )
( 3, Maria Souza, 2)
( 4, Antonio Silva, 1)
Assinale a alternativa incorreta:
a) O Departamento 1 não pode ser excluído
b) O Departamento 3 pode ser excluído
c) A t-upla (5, Joao Oliveira, 5) não pode ser incluída na tabela Empregado
d) O Empregado 2 não pode ser excluído.
e) Para excluir o Departamento 2, antes terá que ser excluída a empregada Maria Souza
6) Escolha a alternativa correta, considerando a implementação no Modelo Relacional do Modelo Entidade-Relacionamento
abaixo, onde o relacionamento Ocupa indica o cargo que o Empregado ocupa atualmente e o relacionamento Ocupado indica
os cargos anteriormente ocupados pelo empregado, se houver:
a) O relacionamento Ocupa deve ser implementado como uma chave estrangeira opcional na tabela Cargo
b) O relacionamento Ocupa deve ser implementado como uma chave estrangeira opcional na tabela Empregado
c) O relacionamento Ocupa deve ser implementado como uma chave estrangeira obrigatória (not null) na tabela Cargo
d) O relacionamento Ocupa deve ser implementado como uma chave estrangeira obrigatória (not null) na tabela Empregado
e) Nenhuma das anteriores
2
*
7) Escolha a alternativa correta, considerando as afirmações sobre a implementação no Modelo Relacional do Modelo
Entidade-Relacionamento abaixo, onde o relacionamento Ocupa indica o cargo que o Empregado ocupa atualmente e o
relacionamento Ocupado indica os cargos anteriormente ocupados pelo empregado, se houver:
I) Deverão ser criadas 3 tabelas, uma para cada entidade ( Empregado e Cargo) e uma para o relacionamento Ocupado
II) Deverão ser criadas 4 tabelas, uma para cada entidade ( Empregado e Cargo) e uma para cada relacionamento
(Ocupado e Ocupa)
III) Deverão ser criadas somente 2 tabelas, uma para cada entidade (Empregado e Cargo)
IV) A quantidade de tabelas a serem criadas depende dos critérios que sejam adotados pelo analista
a) Todas as afirmações são falsas
b) Somente a afirmação I é verdadeira
c) Somente a afirmação II é verdadeira
d) Somente a afirmação III é verdadeira
e) Somente a afirmação IV é verdadeira
8) Escolha a alternativa correta, considerando a implementação no Modelo Relacional das entidades Professor e Disciplina do
Modelo Entidade-Relacionamento de uma Escola, que possuem um relacionamento (0,N):(0,N) que representa o fato de que
um Professor pode ministrar várias Disciplinas e uma Disciplina poder ser ministrada por mais de um Professor
a) Serão criadas somente duas tabelas (Professor e Disciplina), cada uma delas com uma chave estrangeira opcional
referenciando a outra tabela
b) Serão criadas somente duas tabelas (Professor e Disciplina), cada uma delas com uma chave estrangeira obrigatória
referenciando a outra tabela
c) Serão criadas somente duas tabelas (Professor e Disciplina), sem necessidade de chave estrangeira em nenhuma delas
d) Serão criadas três tabelas, uma para cada entidade (Professor e Disciplina) e uma para o relacionamento (Ministra) que será
formada por duas chaves estrangeiras, referenciando as outras duas tabelas
e) Serão criadas somente duas tabelas (Professor e Disciplina), com uma chave estrangeira opcional na tabela Professor
referenciando a tabela Disciplina
9) Escolha a alternativa correta, considerando a implementação no Modelo Relacional do Modelo Entidade-Relacionamento
abaixo, onde o relacionamento Atuação indica a participação de Engenheiros em Projetos e a função que exercem em cada um.
As tabelas a serem construídas são:
3
*
a) Engenheiro(Codigo, Nome), Projeto (Codigo, Titulo, CodEngenheiro, Funcao)
b) Engenheiro(Codigo, Nome, CodProjeto), Projeto (Codigo, Titulo, CodEngenheiro, Funcao)
c) Engenheiro(Codigo, Nome), Projeto (Codigo, Titulo), Atuacao(CodEngenheiro, CodProjeto, Funcao)
d) Engenheiro(Codigo, Nome, CodProjeto, Funcao), Projeto (Codigo, Titulo)
e) Nenhuma das anteriores, por que um relacionamento N:N não pode ser implementado no modelo Relacional
10) Considere as tabelas apresentadas no quadro abaixo onde => indica a chave primaria de cada tabela. Represente
graficamente todos os relacionamentos existentes entre as tabelas, indicando corretamente os extremos 1 e N (“pé de galinha”)
de cada relacionamento e o nome da chave estrangeira que estabelece o relacionamento. Os relacionamentos podem ser
representados diretamente sobre a figura abaixo.
Funcionario
Equipe_Projeto
=> Cod_Func
Nome_Func
CPF_Func
Dt_Nasc
Cod_Cargo
Cod_Depto
=> Cod_Func
Dependente
=> Cod_Func
=> Nome_Depend
Dt_Nasc
Cod_Tipo_Depend
Cliente
=> Cod_Cliente
Nome_Cliente
=> Cod_Projeto
Dt_Entrada_Projeto
Projeto
Tipo_Dependente
Cargo
=> Cod_Cargo
Departamento
=> Cod_Depto
Nome_Depto
Cod_Func_Chefe
=> Cod_Tipo_Depend
Descricao
Nome_Cargo
Valor_Salario_Cargo
=> Cod_Projeto
Nome_Projeto
Cod_Func_Chefe
Dt_Inicio
Cod_Cliente
Cod_Status
Status_Projeto
=> Cod_Status
Descricao
4
Download