Buscar

BANCO DE DADOS AVANCADO PROVA II

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

1. O desenvolvedor, ao criar uma tabela no banco de dados, deverá definir toda a sua estrutura, 
ou seja, além de definir os nomes dos campos de acordo com a conveniência do banco de 
dados, deverá determinar o tipo de dado a ser utilizado, especificar a possibilidade da 
inserção de valores nulos, entre outras características. Contudo, se esta tabela já se encontrar 
criada, qual o comando SQL que o desenvolvedor poderá utilizar para exibir a estrutura desta 
tabela? Assinale a alternativa CORRETA: 
 a) View. 
 b) Describe. 
 c) Select. 
 d) List. 
 
2. O cliente solicitou ao desenvolvedor a criação de uma consulta, a fim de possibilitar a análise 
das informações das tabelas Alunos e Professores conjuntamente. Contudo, ao analisar as 
referidas tabelas, verifica-se que estas não possuem nenhum relacionamento entre si, 
situação em que o desenvolvedor poderá fazer uso de alguns comandos para combinar os 
resultados. Diante desta situação e analisando as tabelas ALUNOS e PROFESSORES, 
classifique V para as sentenças verdadeiras e F para as falsas: 
 
( ) O funcionamento da consulta união prevê o atendimento a alguns requisitos, tais como: 
mesmo número de campos de saída, na mesma ordem e com o mesmo tipo de dados ou 
com tipo de dados compatíveis. 
( ) A consulta SELECT nome, endereco from alunos UNION ALL SELECT nome, endereco 
from professores; retornará todos os registros das tabelas Alunos e Professores ignorando as 
linhas duplicadas, neste caso, Pedro - Rua Rodeio. 
( ) A consulta SELECT nome from alunos INTERSEC SELECT nome from professores; 
retornará todos os registros que se repetem nas consultas. 
( ) A consulta SELECT nome from alunos MINUS SELECT nome from professores; retornará 
todos os registros da segunda consulta, eliminando os duplicados, neste caso: Elton e 
Cristiano. 
( ) A consulta SELECT nome from alunos UNION SELECT endereco from professores; gerará 
um erro de execução, uma vez que são campos que armazenam informações distintas. 
 
Agora, assinale a alternativa que apresenta a sequência CORRETA: 
 
 a) V - F - V - F - V. 
 b) V - V - F - V - V. 
 c) V - F - V - F - F. 
 d) F - V - V - V - F. 
 
3. Um procedimento desenvolvido no banco de dados é como um procedimento na linguagem 
de programação, exceto pelo fato de ser gerenciado pelo SGBD, e não pelo ambiente de 
programação. Dentre as principais vantagens em desenvolver um procedimento dentro do 
próprio banco de dados, destaca-se a possibilidade de o SGBD poder compilar o bloco de 
comandos de programação junto às instruções SQL, principalmente quando estas instruções 
SQL precisam ser recompiladas por causa de mudanças nas definições do banco de dados. 
Com base na tabela Produtos e no Bloco de Comando PL/SQL, analise as sentenças a seguir: 
 
I- Ao executar o bloco de comando PL/SQL, os produtos classificados como da categoria ?B? 
receberão um aumento de 10%. 
II- A declaração da linha 3, ao utilizar o atributo %ROWTYPE, cria um registro com a mesma 
estrutura de um registro da tabela Produtos. 
III- A declaração da linha 2 trata-se de um cursor explícito, o qual, obrigatoriamente, deveria 
ter sido aberto com o comando OPEN c_produto. 
IV- O bloco de comando PL/SQL irá realizar a atualização de todos os valores da tabela 
produtos, sendo que os produtos da categoria ?D? receberão um aumento de 15%. 
 
Agora, assinale a alternativa CORRETA: 
 
 a) As sentenças I, II e IV estão corretas. 
 b) As sentenças III e IV estão corretas. 
 c) Somente a sentença I está correta. 
 d) As sentenças I e III estão corretas. 
 
4. SQL (Structured Query Language) é a linguagem padrão universal para manipular bancos de 
dados relacionais através dos SGBDs. Isso significa que todos os SGBDRs (Sistema de 
Gerenciamento de Banco de Dados Relacionais) oferecem uma interface para acessar o 
banco de dados utilizando a linguagem SQL, embora com algumas variações. Logo, saber o 
que é SQL e como utilizá-la é fundamental para qualquer desenvolvedor de softwares. Com 
relação à linguagem SQL, classifique V para as sentenças verdadeiras e F para as falsas: 
 
( ) A linguagem SQL possui comandos para definição de dados, consultas, atualizações, 
inserções, deleções e concessão ou revogação de privilégios de acesso. 
( ) O formato da construção do comando select contempla basicamente as cláusulas: 
SELECT, FROM, WHERE, GROUP BY e ORDER BY. 
( ) O comando union tende a deixar o select mais lento, e tem como regra uma única 
cláusula ORDER BY que serve para todos os selects envolvidos na busca. 
( ) A forma como o select é construído não altera a performance da busca (tempo de 
retorno dos dados da base de dados). 
 
Assinale a alternativa que apresenta a sequência CORRETA: 
 
FONTE: Disponível em: <http://www.dpi.inpe.br/gilberto/livro/introd/cap3-arquitetura.pdf>. 
Acesso em: 4 abr. 2017. 
 a) F - F - V - V. 
 b) V - V - V - F. 
 c) F - V - F - F. 
 d) F - F - V - F. 
 
5. Analise a estrutura da tabela FUNCIONÁRIO proposta a seguir: 
 
TAB_FUNC 
 
COD_FUNC - NUMBER(05) NOT NULL PRIMERY KEY 
NOM_FUNC - VARCHAR2(100) NOT NULL, 
SAL_FUNC - NUMBER(5,2) NOT NULL, 
VLR_COMIS - NUMBER(5,2) 
 
Imagine que você tenha que montar selects de busca na base de dados acima citada. Sobre 
os selects cujos comandos apresentariam erro de comando ou retorno ao serem executados 
no banco de dados, classifique V para as sentenças verdadeiras e F para as falsas: 
 
( ) Listar os dados de todos de todos os funcionários cujos nomes possuam a letra a, 
independente de ser no início, meio ou fim do texto : SELECT * FROM TAB_FUNC WHERE 
nom_func_LIKE '%a%'. 
( ) Listar todos os dados dos funcionários de nome SIMONE ou ELTON: SELECT * FROM 
tab_func WHERE upper(nom_func) = ('SIMONE') OR upper(nom_func) = ('ELTON'). 
( ) Listar o nome dos funcionários que tem salário entre 1800 e 3500 ordenado pelo salario: 
SELECT nom_func FROM tab_func WHERE val_sal BETWEEN (1800,3500) order by val_sal. 
( ) Listar nome, salário e comissão do funcionário de código 351: SELECT nom_func, 
sal_func, val_comiss FROM tab_func WHERE cod_func = 351. 
 
Assinale a alternativa que apresenta a sequência CORRETA: 
 a) V - V - F - V. 
 b) F - V - V - F. 
 c) F - F - F - V. 
 d) V - F - F - V. 
 
6. A linguagem SQL é composta por várias funções voltadas para a formatação dos campos do 
tipo data, possibilitando, desta forma, a exibição dos dados de maneira mais amigável e 
intuitiva ao usuário final. Diante disso, considerado a tabela de Clientes, analise as sentenças 
a seguir: 
 
I- A consulta select trunc(months_between (to_date(data_cadastro,'DD/MM/YYYY'), 
to_date(data_nasc,'DD/MM/YYYY')),0) from clientes; retornará o número de meses entre a 
data de cadastro e a data de nascimento dos clientes, exibindo apenas o valor inteiro. 
II- A consulta select add_months(data_cadastro, 2) from clientes where data_cadastro 
between '01/01/2015' and '31/01/2015'; retornará o seguinte resultado: 01/03/2015. 
III- A consulta select * from clientes where 
trunc(to_char(MONTHS_BETWEEN(TO_DATE(sysdate,'DD-MM-YYYY'), 
TO_DATE(data_cadastro,'DD-MM-YYYY'))),0) < 3; retornará somente os clientes que foram 
cadastrados há mais de três meses, contados da data atual. 
IV- A consulta select nome from clientes where data_cadadstro = LAST_DAY(data_cadastro), 
retornará o nome de todos os clientes, cuja data de cadastro ocorrerá no último dia do mês, 
neste caso, Pedro. 
 
Agora, assinale a alternativa CORRETA: 
 
 a) As sentenças I, II e IV estão corretas. 
 b) As sentenças II e III estão corretas. 
 c) Somente a sentença II está correta. 
 d) As sentenças I, III e IV estão corretas. 
 
7. Não são raras as situações de falhas em aplicativos. Nestes casos, é função do Sistema 
Gerenciador de Banco de Dados efetuar o reparo para
que ele volte a operar da mesma forma 
anterior à falha, mantendo a integridade das informações. Para isso, o SGBD precisa 
memorizar as alterações feitas nos dados através de transações executadas até o momento 
da parada. Sobre o local onde estas alterações são armazenadas, assinale a alternativa 
CORRETA: 
 a) Dicionário do banco de dados. 
 b) Arquivo de metadados do banco de dados. 
 c) Arquivo de log do banco de dados. 
 d) Catálogo do banco de dados. 
 
8. Um banco de dados armazena e retorna dados ao usuário. O conceito de banco relacional 
especifica a forma de armazenamento dos dados na base. Com relação aos bancos de dados 
relacionais, analise as sentenças a seguir: 
 
I- Grau expressa o número de linhas de uma relação. 
II- Um relacionamento em um diagrama ER é representado por um losango. 
III- Em um diagrama ER, um relacionamento representa uma associação entre duas ou mais 
entidades. 
 
Assinale a alternativa CORRETA: 
 a) As sentenças I e II estão corretas. 
 b) Somente a sentença III está correta. 
 c) As sentenças I e III estão corretas. 
 d) As sentenças II e III estão corretas. 
 
9. O uso de cursores na linguagem PL/SQL mostra-se como um elemento fundamental, uma 
vez que possibilita a criação de espaços de armazenamento mais complexos que as 
variáveis, como uma matriz de informação resultada de uma consulta SQL. Com relação aos 
cursores do PL/SQL, analise as sentenças a seguir: 
 
I- As instruções INSERT, UPDATE, DELETE poderão ser processadas por cursores implícitos. 
II- Um cursor explícito tem por finalidade armazenar várias linhas resultantes de uma consulta 
SQL. 
III- Um cursor implícito possibilita a execução de três operações, como, por exemplo, o 
FETCH, responsável por retornar a quantidade de registros abertos. 
IV- Os cursores implícitos podem ser definidos com parâmetros, sendo que para cada 
parâmetro deverá ser definido um nome e um tipo de dado. 
 
Agora, assinale a alternativa CORRETA: 
 a) Somente a sentença III está correta. 
 b) As sentenças I e II estão corretas. 
 c) As sentenças I, II e IV estão corretas. 
 d) As sentenças II e III estão corretas. 
 
10. A maioria dos softwares, desenvolvidos em determinados pontos de sua execução, 
necessitam tomar decisões, como, por exemplo, verificar qual a faixa salarial que 
determinado funcionário se encontra, a fim de estabelecer qual será o percentual de reajuste 
do seu salário, ou seja, será necessário empregar um controle condicional, o qual permitirá 
controlar o fluxo de execução do software baseado em uma condição. Acerca das estruturas 
condicionais no PL/SQL, analise as sentenças a seguir: 
 
I- A estrutura condicional apresentada entre as linhas 11 e 19 refere-se a uma estrutura 
condicional composta. 
II- Ao executar o bloco de comandos e selecionar o funcionário de código 3 (Alex), pode-se 
afirmar que a mensagem impressa será 550,00. 
III- O funcionário de código 4 (Andre) nunca receberá aumento, uma vez que sua faixa de 
salário não se encontra nas condições estabelecidas entre as linhas 11 e 19. 
IV- O bloco de comandos prevê a alteração salarial para todos os funcionários, cujo 
percentual deverá observar a faixa salarial. 
 
Agora, assinale a alternativa CORRETA: 
 
 a) As sentenças I, II e IV estão corretas. 
 b) As sentenças II e III estão corretas. 
 c) As sentenças I, III e IV estão corretas. 
 d) Somente a sentença I está correta.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais