Prévia do material em texto
Página 1 - 28/05/2019 às 12:03
GABARITO
Protocolo: 536867
Prova
Data de aplicação: 17/05/2019
Curso: Engenharia de Software
Disciplina: Banco de Dados II
Ano: 20191 / Semestre: 4
RGM:
PROVA 01
Questão 1
Explique o que irá acontecer quando o comando SQL a seguir for executado. ALTER TABLE GERENTE ADD
CONSTRAINT ̀ GERENTE_CODSETOR ̀FOREIGN KEY (̀ CODSETOR )̀
REFERENCES ̀ SETOR ̀(̀ CODSETOR )̀ ON UPDATE CASCADE ON DELETE SET NULL
Resposta do aluno: Irá alterar e/ou adicionar uma chave estrangeira na tebela cliente.
Parecer do professor: Questão correta.
Questão 2
Escreva o comando SQL que corresponda com a seguinte consulta em Álgebra Relacional: À NOMEVEND,
SALARIO (Ã SALARIO > 600 V CODSETOR = 2 (VENDEDOR))
Resposta do aluno: SELECT ("NOMEVEND", "SALARIO") FROM VENDEDOR WHERE
SALARIO>600 AND CODSETOR=2
Parecer do professor: Questão correta.
Questão 3
As funções no MySQL ajudam o usuário em tarefas específicas, aumentando as possibilidades de recuperação
de dados em um banco. Assinale a alternativa que corresponda a uma função de string.
a) substr() (correta)
b) curdate()
c) t runcate()
d) round()
Questão 4
No cálculo relacional existem operadores especiais que são os quantificadores. Assinale a alternativa que
descreva corretamente as regras dos quantificadores.
a) No quantificador existencial (2) a fórmula será verdadeira se todas as tuplas forem verdadeiras.
b) No quantificador universal (V) a fórmula será verdadeira se pelo menos uma tupla for verdadeira.
c) uma fórmula (2t)(F) é verdadeira se existir alguma tupla que torne F verdadeiro. (correta)
d) uma fórmula (Vt)(F) é verdadeira se existir alguma tupla que torne F verdadeiro.
Questão 5
Quando uma chave estrangeira é alterada (ON UPDATE) ou deletada (ON DELETE) algumas ações podem ser
tomadas. Assinale a alternativa que indique qual o nome da ação quando não é permitida a operação.
Página 2 - 28/05/2019 às 12:03
a) SET DEFAULT
GABARITO
Protocolo: 536867
b) SET NULL
c) CASCADE
d) RESTRICT (correta)
Questão 6
O MySQL prevê o uso de funções. Que nos possibilitam fazer diversas operações, dentre elas: realizar cálculos,
manipular strings,trabalhar com datas, realizar opções lógicas, extrair informações dos nossos registros etc.
Assinale a alternativa que corresponda com a função de String que retorne uma String com um pedaço a ser
definido de uma String original.
a) substr() (correta)
b) length()
c) ucase()
d) lcase()
Questão 7
As funções no MySQL ajudam o usuário em tarefas específicas, aumentando as possibilidades de recuperação
de dados em um banco. Assinale a alternativa que corresponda a uma função de data.
a) substr()
b) truncate()
c) round()
d) curdate() (correta)
Questão 8
As funções no MySQL ajudam o usuário em tarefas específicas, aumentando as possibilidades de recuperação
de dados em um banco. Assinale a alternativa que corresponda a uma função de número.
a) substr()
b) curdate()
c) truncate() (correta)
d) length()
Questão 9
"O tipo de restrição que mantêm a consistência do banco de dados através do relacionamento. Como outros
tipos de restrição, ele previne alterações de inserção ou atualizações de dados que levem a inconsistência."
Assinale a alternativa que indique corretamente qual o recurso se refere a esta afirmação.
a) Chaves Primárias
b) Índices
c) Chaves Estrangeiras (correta)
d) Chaves compostas
Questão 10
O Cálculo Relacional de Tupla é baseado na definição de uma série de variáveis de tupla. Que por sua vez
definirão um conjunto de regras que indicarão o que será recuperado do banco de dados. Assinale a alternativa
que apresente a consulta se quisermos pegar somente as colunas do nome do vendedor e salário de todos os
vendedores que tenham um salário acima de 600 reais e trabalha no setor 2.
a) {VENDEDOR(t.NOMEVEND, t.SALARIO)|t.SALARIO>600 AND t.CODSETOR=2}
b) {t|VENDEDOR(t) AND t.SALARIO > 600 AND t.CODSETOR=2}
c) {t.NOMEVEND, t.SALARIO|VENDEDOR(t) AND t.SALARIO > 600 AND t.CODSETOR=2} (correta)
d) {t=NOMEVEND,SALARIO|VENDEDOR(t) OR t.SALARIO>600 AND t.CODSETOR=2}
Página 3 - 28/05/2019 às 12:03
GABARITO
Protocolo: 536867
PROVA 02
Questão 1
O que é uma Stored Procedure? Qual sua função no Banco de Dados? Cite uma vantagem na utilização.
Resposta do aluno: É uma rotina especifica definida no banco de dados, indentificada por um nome pelo
qual pode ser invocada.
Parecer do professor: Questão correta.
Questão 2
Escreva o comando SQL com Join que faça a junção representada na imagem.
Resposta do aluno: SELECT *FROM TABLEB B LEFT JOIN TABLEA A ON B.KEY = A.KEY
Parecer do professor: Questão incorreta. Resposta esperada: SELECT * FROM TableA A RIGHT JOIN TableB B ON
A.key = B.key
Questão 3
Assinale a alternativa que contenha a sintaxe do comando SQL de junção que execute o que se pede a seguir:
Selecionar o conjunto de registros apenas na Tabela A, mas não na Tabela B.
GABARITO
Protocolo: 536867
Página 4 - 28/05/2019 às 12:03
a) SELECT * FROM TableA A RIGHT JOIN TableB B ON A.key = B.key
b) SELECT * FROM TableA A LEFT JOIN TableB B ON A.key = B.key
c) SELECT * FROM TableA A RIGHT JOIN TableB B ON A.key = B.key WHERE A.key IS NULL
d) SELECT * FROM TableA A LEFT JOIN TableB B ON A.key = B.key WHERE B.key IS NULL (correta)
Questão 4
"Rotinas Definidas no banco de dados, identificadas por um nome pelo qual pode ser invocadas. Um retorno
explicito é declarado através da cláusula RETURN, portanto esse recurso pode ser utilizado diretamente em
instruções de seleção." Assinale a alternativa que corresponda com o nome do recurso da afirmação acima.
a) Stored Procedures
b) Triggers
c) Stored Functions (correta)
d) Backup
Questão 5
O operador __________ recebe duas tabelas e faz a combinação das tuplas da primeira tabela com a da
segunda tabela indicando qual a condição de junção, ou seja, quais colunas devem ter seus valores iguais para
que uma tupla seja retornada. Assinale a alternativa que preencha corretamente a lacuna com o nome do
operador de junção.
a) INNER JOIN (correta)
b) NATURAL JOIN
c) LEFT JOIN
d) FULL OUTER JOIN
Questão 6
O operador __________ recebe duas tabelas, que possuem uma coluna com um nome em comum. Nesse caso,
ela faz a combinação das tuplas da primeira tabela com a da segunda tabela sem a necessidade de definir qual
as colunas em comum, e filtra as correspondências onde o valor da coluna em comum é igual. Assinale a
Página 5 - 28/05/2019 às 12:03
alternativa que preencha corretamente a lacuna com o nome do operador de junção.
GABARITO
Protocolo: 536867
a) INNER JOIN
b) NATURAL JOIN (correta)
c) LEFT JOIN
d) FULL OUTER JOIN
Questão 7
Assinale a alternativa que contenha o comando para chamarmos uma Stored Procedure.
a) LOOP procedure_valor(1,@res);
b) SELECT procedure_valor FROM PRODUTOS;
c) EXEC procedure_valor(1,@res);
d) CALL procedure_valor(1,@res); (correta)
Questão 8
Carvalho (2017) define alguns benefícios que podemos obter ao utilizar triggers. Assinale a alternativa que não
contém uma vantagem ao utilizar triggers.
a) Verificar a integridade dos dados, pois só é possível fazer a uma verificação após a inserção no registro.
(correta)
b) Contornar erros na regra de negócio do sistema no banco de dados.
c) Utilizar como substituta para event_scheduler. Entretanto, ela não o substitui em processos que não são
disparados a partir de uma tabela.
d) Auditar as mudanças nas tabelas.
Questão 9
Assinale a alternativa que contenha o comando para chamarmos uma Stored Function.
a) LOOP function_valor(1,@res);
b) SELECT function_valor(1) FROM PEDIDO; (correta)
c) EXEC function_valor(1,@res);
d) CALL function_valor(1,@res);
Questão 10
"Conjunto de operações que são executadas automaticamente quando uma alteração é feitaem um registro
que está relacionado a uma tabela. Este recurso pode ser invocado antes ou depois de uma alteração em insert,
update ou delete." Assinale a alternativa que corresponda com o nome do recurso da afirmação acima.
a) Stored Procedures
b) Triggers (correta)
c) Stored Functions
d) Backup