Buscar

Gabarito da prova Programação e Desenvolvimento de Banco de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Gabarito da prova Programação e Desenvolvimento de Banco de Dados 
 
Questão 1 
Analise o trecho de código SQL a seguir, que realiza a criação de uma tabela. 
CREATE TABLE convidados ( 
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
nome VARCHAR(30) NOT NULL, 
sobrenome VARCHAR(30) NOT NULL, 
email VARCHAR(50), 
data_reg DATETIME, 
nascimento DATE 
); 
Sobre este código, assinale a alternativa correta. 
A) "id" é um nome de campo inválido, visto que é chave primária, e por isso deve 
ser declarado em caixa-alta. 
B) O script não será executado, pois não foi especificado um tamanho para o 
atributo do tipo DATETIME. 
C) O campo id é chave estrangeira e tem seu comprimento em até 6 dígitos. 
D) Os campos "email" e "data_reg" não podem armazenar valores nulos. 
E) A cláusula AUTO_INCREMENT designa que este campo seja automaticamente 
preenchido pelo SGBD e incrementado a cada inserção de registro. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 2 
Considere um banco de dados de uma biblioteca, que relaciona alunos, livros 
emprestados e restrições de empréstimo, e analise as duas tabelas extraídas deste 
banco: 
 
Assinale a alternativa que apresenta uma consulta em que seja possível encontrar o 
nome de todos os alunos que efetuaram empréstimos, mas que estão com restrição 
para locar novos livros. 
A) SELECT aluno.nome 
FROM aluno 
WHERE restrição.aluno_RA IN (SELECT aluno_RA FROM restrição); 
B) SELECT nome 
FROM aluno INNER JOIN restricao 
WHERE aluno.RA IN (SELECT aluno_RA FROM restrição); 
C) SELECT aluno.nome 
FROM aluno 
WHERE aluno.RA IN (SELECT aluno_RA FROM restrição); 
D) SELECT aluno.nome 
FROM aluno 
WHERE aluno.RA NOT IN (SELECT aluno_RA FROM restrição); 
E) SELECT aluno.nome 
FROM restrição 
WHERE aluno.RA IN (SELECT aluno_RA FROM aluno); 
 
 
 
 
Questão 3 
Considere o seguinte conjunto de instruções SQL: 
INSERT – insere dados em uma tabela. 
UPDATE – atualiza os dados existentes em uma tabela. 
DELETE – exclui registros de uma tabela. 
Este conjunto de instruções pertence a qual subconjunto da linguagem SQL? 
A) Linguagem de Definição de Dados (DDL) 
B) Linguagem de Controle de Dados (DCL) 
C) Linguagem de Transação de Dados (DTL) 
D) Linguagem de Consulta a Dados (DQL) 
E) Linguagem de Manipulação dos Dados (DML) 
Questão 4 
Segundo Date (2012), para que uma transação feita no banco de dados possa ser 
revertida, é possível utilizar o recurso de ROLLBACK para retornar ao estado 
anterior da transação. 
Considere a tabela "Produto" em um banco de dados: 
Codigo Nome Preço 
1 Lapiseira 15.99 
2 Caneta 10.00 
3 Lápis 5.98 
Agora anlise os scripts a seguir: 
SET AUTOCOMMIT=0; 
SAVEPOINT pontoRestaura; 
ALTER TABLE Produto CHANGE Preço PreçoProd VARCHAR(30) NOT NULL; 
ROLLBACK TO SAVEPOINT pontoRestaura; 
Após a execução de todos estes comandos, assinale a alternativa correta a respeito 
do que ocorreu no banco: 
A) O controle de transação foi alterado para modo automático por meio do 
comando "SET AUTOCOMMIT=0;". 
B) Após a execução do comando "ROLLBACK TO SAVEPOINT pontoRestaura;", o 
nome da terceira coluna ficou como "Preço". 
C) Logo após executar o comando "ALTER TABLE Produto CHANGE Preço PreçoProd 
VARCHAR(30) NOT NULL;" e reiniciar o servidor de banco de dados, o nome da 
terceira coluna estará definido como "Preço". 
D) Após a execução do comando "ROLLBACK TO SAVEPOINT pontoRestaura;", será 
gerado um erro e o nome da terceira coluna ficará definido como "PreçoProd". 
E) O comando "SAVEPOINT pontoRestaura;" está com a sintaxe incorreta. 
 
 
 
Questão 5 
Considere a seguinte tabela, já preenchida em um banco de dados: 
 
A partir desta tabela, foram executadas as seguintes instruções: 
I. SELECT COUNT(Valor) FROM Veiculos; 
II. SELECT COUNT( DISTINCT MARCA) FROM Veiculos; 
III. SELECT COUNT(Modelo) FROM Veiculos; 
Assinale a alternativa que apresenta CORRETAMENTE os valores de saída, 
respectivamente: 
A) 11 – 12 – 12. 
B) 12 – 11 – 11. 
C) 1 – 5 – 12. 
D) 9 – 12 – 5. 
E) 11 – 5 – 12. 
 
 
 
 
 
 
 
 
 
 
 
Questão 6 
Na matemática é possível estabelecer algumas operações de conjuntos, como união, 
intersecção, diferença e complementar. E estas operações estão presentes em 
diversas áreas, inclusive em banco de dados. Com base em seus conhecimentos 
sobre teoria de conjuntos e subconsultas banco de dados, analise a afirmativa a 
seguir e assinale a alternativa que complete as lacunas corretamente. 
A técnica de __________________ de conjuntos em bancos de dados possibilita que 
um grupo de dados seja criado, permitindo, posteriormente, trabalhar a relação sobre 
eles. Com isso, o desenvolvedor pode efetuar subconsultas aninhadas e comparar os 
conjuntos de dados, utilizando-se condições (____________). Para que isso ocorra 
à sintaxe disponível no SQL, necessita que seja inserida a palavra ____________ em 
conjunto com os operadores matemáticos =, <>, <, <=, > e >=. 
A) Intersecção – FROM – WHERE. 
B) comparação – WHERE – SOME. 
C) comparação – SOME – ELSE. 
D) comparação – FROM – WHERE. 
E) intersecção – WHERE – SOME. 
Questão 7 
Um recurso muito utilizado nos dias de hoje é criação de nuvens de palavras, a partir 
da busca das palavras mais citadas/comentadas/utilizadas em determinado local ou 
sistema. Isto é muito utilizado para tomadas de decisões. Este tipo de recurso tem 
como intuito fazer a seleção de uma palavra específica em um texto longo. 
Analogamente, assinale o recurso SQL que possa ser utilizado de forma similar em 
um banco de dados. 
A) FULLTEXT. 
B) FUNCTIONS. 
C) PROCEDURES. 
D) VIEW. 
E) INDEX. 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 8 
Observe os comandos disponíveis a seguir. 
SET AUTOCOMMIT=0; 
CREATE TABLE q ( 
Col_1 INT, 
Col_2 VARCHAR(3), 
Col_3 DECIMAL(3 , 1 ) 
); 
INSERT q VALUES 
(1, "ABC", 41.5), 
(10, "DEF", 15.4), 
(100, "GHI", 54.1); 
SAVEPOINT q1; 
DELETE FROM q WHERE Col_1 = 100; 
COMMIT; 
Assinale a alternativa correta com relação à utilização dos comandos a seguir: 
/*Comando 1*/ 
ROLLBACK TO SAVEPOINT q1; 
/*Comando 2*/ 
SELECT * FROM q; 
A) Comando 1: retorna o SAVEPOINT "Query OK"; Comando 2: retorna apenas dois 
registros. 
B) Comando 1: retorna que o SAVEPOINT não existe; Comando 2: retorna apenas 
três registros. 
C) Comando 1: retorna do SAVEPOINT a mensagem "Query OK"; Comando 2: 
retorna apenas três registros. 
D) Comando 1: retorna que o SAVEPOINT não existe; Comando 2: retorna apenas 
dois registros. 
E) Comando 1: gera um erro de sintaxe; Comando 2: retorna um erro de sintaxe. 
 
 
 
 
 
 
 
 
 
 
Questão 9 
Assinale a alternativa com os comandos corretos para a criação do seguinte banco 
de dados: 
Banco de dados "mydb", com o CHARSET definido como UTF-8 e COLLATION 
"utf8_general_ci". 
A) CREATE SCHEMA mydb DEFAULT CHARSET = utf8, DEFAULT COLLATE = 
utf8_general_ci; 
B) CREATE SCHEMA mydb DEFAULT CHARSET utf8, DEFAULT COLLATE 
utf8_general_ci; 
C) CREATE mydb CHARSET = utf8 COLLATE = utf8_general_ci; 
D) CREATE DATABASE mydb; DEFAULT CHARSET = utf8; DEFAULT COLLATE = 
utf8_general_ci; 
E) CREATE DATABASE mydb DEFAULT CHARSET = utf8 DEFAULT COLLATE = 
utf8_general_ci; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 10 
Um DBA desenvolveu um banco de dados para a empresa que trabalha, e criou um 
comando para inserir os seguintes dados na tabela "abc": 
INSERT INTO tabela(x,y,z) VALUES 
(10, 'Z', 'sim'), 
(20, 'W', 'sim'), 
(30, 'X', 'nao'), 
(50, 'H', 'nao'); 
Em seguida o DBA executou os comandos a seguir: 
/*Primeiro Script*/ 
SELECT x, y, z 
FROM tabela 
WHERE z NOT IN (SELECT z FROM tabela WHERE z <> "sim"); 
/*Segundo Script*/ 
SELECT x, y, z 
FROM tabela 
WHERE z NOT IN (SELECT z FROM tabela where z <> "SIM" OR "NAO"); 
/*Terceiro Script*/ 
SELECT x, y, z 
FROM tabela 
WHERE z NOT IN (SELECT z FROM tabela where z <> "Nao"); 
Com basenessas informações, assinale a alternativa que representa as saídas 
corretamente. 
A) Primeiro Script: (10, Z, Sim), (20, W, Sim); Segundo Script: (10, Z, Sim), (20, 
W, Sim); Terceiro Script: (30, X, Não), (50, H, Não). 
B) Primeiro Script: (10, Z, Sim), (20, W, Sim); Segundo Script: (30, X, Não), (50, 
H, Não); Terceiro Script: (30, X, Não), (50, H, Não). 
C) Primeiro Script: (30, X, Não), (50, H, Não); Segundo Script: (30, X, Não), (50, 
H, Não); Terceiro Script: (10, Z, Sim), (20, W, Sim). 
D) Primeiro Script: (10, Z, Sim), (20, W, Sim); Segundo Script: (30, X, Não), (50, 
H, Não); Terceiro Script: Empty set, 4 warnings. 
E) Primeiro Script: (10, Z, Sim), (20, W, Sim); Segundo Script: Empty set, 2 
warnings; Terceiro Script: Empty set, 2 warnings. 
 
 
 
 
 
 
 
Questão 11 
Considere duas tabelas criadas conforme o código SQL a seguir: 
CREATE TABLE Categoria( 
Id INT(3) PRIMARY KEY AUTO_INCREMENT, 
Nome VARCHAR(50) NOT NULL 
); 
CREATE TABLE Produto( 
Codigo INT(3) PRIMARY KEY AUTO_INCREMENT, 
Nome VARCHAR(50) NOT NULL, 
Valor DECIMAL(6, 2) NOT NULL, 
Id_Categoria INT(3) NOT NULL, 
FOREIGN KEY (Id_Categoria) REFERENCES Categoria(Id) 
); 
Se quisermos efetuar uma consulta que nos retorne o nome da categoria e seus 
respectivos nomes dos produtos, deve ser utilizado o seguinte comando: 
SELECT Categoria.nome, Produto.nome 
FROM Categoria ____________ Produto 
ON ____________ = ____________; 
Assinale a alternativa que completa as lacunas corretamente, para que o comando 
seja executado e retorne a consulta desejada. 
A) RIGHT JOIN / Categoria.Id / Produto.Id_Categoria 
B) INNER JOIN / Id / Id_Categoria 
C) RIGHT JOIN / Categoria.Id / Id_Categoria 
D) LEFT JOIN / Id / Id_Categoria 
E) INNER JOIN / Categoria.Id / Produto.Id_Categoria 
Questão 12 
Na ____________ temos um grupo de comandos padrão SQL (Structure Query 
Language) que permite a inserção e manutenção dos dados. Os comandos básicos 
são os seguintes: INSERT, UPDATE e DELETE. 
Assinale a alternativa que preenche corretamente a lacuna. 
A) Linguagem de Controle de Dados (DCL) 
B) Linguagem de Definição de Dados (DDL) 
C) Linguagem de Manipulação de Dados (DML) 
D) Linguagem de Transação de Dados (DTL) 
E) Linguagem de Consulta de Dados (DQL)

Continue navegando