Buscar

Várias questões de provas - Objetivas e discursivas

Prévia do material em texto

Questões objetivas com SQL
1. Considere as seguintes tabelas de um banco de dados: - FORNECEDOR { for_codigo, for_nome, for_telefone, for_cidade, est_uf } - ESTADO { est_uf, est_nome } A instrução SQL que recupera os nomes dos estados para os quais não há fornecedores cadastrados é:
[ x ] SELECT e.est_nome FROM estado AS e WHERE e.est_uf NOT IN ( SELECT f.est_uf FROM fornecedor AS f );
2. Qual das consultas a seguir responde a seguinte pergunta: quais os nomes dos alunos que possuem média maior que 6 e idade não superior a 30 anos?
[ x ] SELECT nome FROM alunos WHERE media > 6 AND idade <= 30
3. Dada a instrução SQL: SELECT * FROM Paciente WHERE endereço NOT LIKE "Avenida%"; É correto afirmar que serão selecionados
[ x ] apenas os registros da tabela Paciente que não possuem como inicial do conteúdo do campo "endereço" a palavra Avenida.
4. Qual a sintaxe correta para criação de tabela EMPREGADO com os campos ID_EMP_MAT, VC_EMP_NOM, NU_EMP_CAR sendo o primeiro campo chave primária e o último campo chave estrangeira da tabela CARGO:
[ x ] CREATE TABLE EMPREGADO (ID_EMP_MAT INTEGER, VC_EMP_NOM VARCHAR(50) NOT NULL, NU_EMP_CAR INTEGER, PRIMARY KEY (ID_EMP_MAT), FOREIGN KEY (NU_EMP_CAR) REFERENCES CARGO (ID_CAR_COD) ON DELETE CASCADE ON UPDATE CASCADE);
5. Considere o esquema abaixo:
- PROFESSOR (matriculacpf, nomecpf, titulacao, anoadmissao)
- MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR codigo REFERENCIA codigodisciplina em DISCIPLINA
- DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
Os comandos SQL apresentam todos os elementos necessários para sua criação estão representados em:
[ x ] CREATE TABLE MINISTRA(MATRICULA NUMBER(5) NOT NULL, CODIGO VARCHAR(5) NOT NULL); CREATE TABLE PROFESSOR(MATRICULAPRF NUMBER(5) NOT NULL, NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR(15) NOT NULL, ANOADMISSAO VARCHAR(4) NOT NULL, PRIMARY KEY(MATRICULAPRF));
Questões objetivas com imagem
1. Partindo da tabela a seguir, considerando que a mesma já foi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para aumentar em 10% o valor unitário de cada produto?
[ x ] UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT + VALOR_UNIT * 10 /100;
2. Partindo da tabela a seguir, considerando que a mesma já foi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para inserir um registro na tabela?
[ x ] INSERT INTO X_PROD VALUES ( 20, 'TV Led 40 polegadas', 400, 3000);
3. Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2012 até o dia de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA IN ('21/11/2013', '22/11/2014');": 
[ x ] SELECT * FROM TCC WHERE DTDEFESA BETWEEN '21/11/2013' AND '22/11/2014';
4. No Script SQL de criação da tabela pagamento aparece a palavra 'funcionario' 4 vezes. Sendo assim, é possível afirmar que se referem, respectivamente:
[ x ] atributo, apelido, campo, tabela
5. De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
6. Apresentar o menor salário pago aos Empregados Agrupados por Departamento.
[ x ] SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO;
De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar apenas os nomes completos dos Empregados que tenham no cargo a palavra "venda".
[ x ] SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE '%VENDA%' ;
	
7. De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar os Ids e os nomes dos Departamentos ordenados por nome de forma Decrescente.
[ x ] SELECT ID, NOME FROM DEPARTAMENTO ORDER BY NOME DESC;
8. De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar apenas os nomes completos dos Empregados que tem salario entre R$ 1.000,00 e R$2.000,00 
[ x ] SELECT PRIM_NOME || ' ' || ULT_NOME FROM EMPREGADO WHERE SALARIO BETWEEN 1000 AND 2000;
	
9. De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
10. Apresentar os primeiros nomes, o salário e a data de admissão dos Empregados que ganham acima de R$ 1.000,00 em ordem Crescente de Salário e de Data de Admissão.
 [ x ] SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY SALARIO, DT_ADMISSAO;
	
11. Observe a tabela R:
Qual será o resultado da consulta: SELECT X FROM R WHERE Y is null;
[ x ] 1 e 4
12. Qual o resultado da consulta SELECT COUNT(DISTINCT X) FROM R?
[ x ] 3
13. Considere o esquema de banco de dados ilustrado na figura abaixo em que as chaves primárias estão sublinhadas.
 Podemos afirmar que a coluna cod_curso da tabela Aluno é _____________ da tabela Curso na coluna cod_curso. Assinale a alternativa que contém a sentença que completa a frase acima:
[ x ] Chave estrangeira
Questões objetivas com tubarão
1. Esquema: 
Ordem (IDOrdem, NomeOrdem) 
Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio) 
Nome (IDNome, IDEspécie, NomePopular)
 Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) 
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Deseja-se exibir os nomes das ordens das Espécies de Tubarões cadastradas até o identificador de espécie de número 018103, sem que os nomes se repitam. Assinale a alternativa correta abaixo
[ x ] SELECT DISTINCT nomeOrdem FROM Ordem O, Espécie E WHERE O.IDOrdem = E.IDordem AND E.IDEspécie <= 018013;
2. Esquema: 
Nome (IDNome, IDEspécie, NomePopular) 
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) 
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) 
Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea)
 Sabendo-se que a tabela nome contém nomes populares de tubarões e deseja-se listar o comprimento e o sexo de todos os tubarões que tem nome popular terminado com a letra k. Assinale a alternativa abaixo que retorna corretamente a consulta desejada:
[ x ] SELECT Comprimento, Sexo FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = E.IDEspecie AND N.IDEspécie = E.IDEspecie AND NomePopular like '%k';
3.Esquema: 
Nome (IDNome, IDEspécie, NomePopular)
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) 
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) 
Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) 
Deseja-se realizar uma consulta da tabela Captura exibindo-se a data e a temperatura da água apresentada em graus Celsius, convertida para graus Fahrenheit (Fórmula °F = °C × 1, 8 + 32). Assinale a alternativa que exibe os dados convertidos corretamente:
[ x ] SELECT DATA, TEMPAGUA * 1.8 + 32 "°F" FROM CAPTURA;
4. Esquema:
Ordem (IDOrdem, NomeOrdem) 
Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio)
 Esp_País (IDEspécie, CodPaís) 
País (CodPaís, NomePaís) 
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) 
Assinale qual das alternativas abaixo representa uma consulta que retorna a quantidade de espécies de tubarões encontradas no Brasil cuja coluna é nomeada de QTD:
[ x ] SELECT COUNT(*) QTD FROM ESPÉCIE E, ESP_PAÍS EP, PAÍS P WHERE E.IDESPECIE = EP.IDESPÉCIE AND EP.CODPAÍS = P.CODPAÍS AND NOMEPAÍS = "Brasil";
5. Esquema:
 Nome (IDNome, IDEspécie, NomePopular) 
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) 
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) 
Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) 
Deseja-se consultar a quantidade de tubarões do sexo feminino que foram capturados entre os anos de 2002 e 2013. Assinale a opção abaixo que realiza esta consulta:
[ x ] SELECT COUNT (*) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = 'F' AND DATA BETWEEN '01/01/2002' AND '31/12/2013';
Questões com representação algébrica
4. Considere a relação:
FILME (nome, diretor,tempoduracao, genero, ano)
A consulta em álgebra relacional que retorna o nome e o ano de todos os filmes de ação com tempo de duração entre 120 e 180 minutos.
[ x ]nome, ano ((genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
A relação T1 abaixo conterá:
T1 = nome, sexo,salário,dept ((sexo="MASCULINO") and (salário<5000) (EMPREGADO)) 
[ x ] Nome, sexo, salário e depto de todos os empregados homens que ganham menos que 5000
Questões objetivas - conceituais
1. Sobre a cláusula WHERE do comando SELECT, é correto afirmar que:
[ x ] Filtra as linhas a serem exibidas no resultado
2. Qual dos operadores de comparação de consultas Multi-Linhas a seguir NÃO é válido?
[ x ] =
3. (FCC - 2009 - Análise de Sistemas - Suporte - ADAPTADA) Uma instrução Select usada na cláusula Where ou Having de outra instrução Select é
[ x ] Uma subconsulta
4. O comando SQL que garante a atomicidade de uma transação é:
[ x ] COMMIT
5. Uma unidade de execução de programa delimitada pelos comandos BEGIN TRANSACTION e END TRANSACTION é denominada uma:
[ x ] Transação
6. São tipos de JOIN:
[ x ] INNER JOIN, LEFT JOIN e RIGHT JOIN.
7. (CESGRANRIO - 2010 - IBGE - Analista de Sistemas - Desenvolvimento de Aplicações) Algumas regras de heurísticas vinculadas à álgebra relacional, como "execute as operações de seleção o mais cedo possível", "execute antes as projeções" e "evite os produtos cartesianos", são usualmente empregadas em sistemas gerenciadores de bancos de dados para a implementação de
[ x ] otimização de consultas.
8. Sobre algoritmos para o processamento de junções, assinale a alternativa verdadeira.
[ x ] O algoritmo Nested-Loop Join pode produzir o menor custo de execução possível, desde que uma das duas tabelas possa ser armazenada por inteiro na memória.
9. O comando SQL que apaga um tabela é:
[ x ] DROP TABLE
10. De uma chave primária é certo afirmarmos: I Pode ser simples ou composta IINão pode constar entre as chaves candidatas da relação III O atributo da chave primária deve ser único Estão corretas:
[ x ] I e III
11. SQL é uma linguagem?
[ x ] Para manipulação de banco de dados.
12. A propriedade que garante a proteção de uma transação dos efeitos de atualizações executadas por outras transações simultâneas é:
[ x ] Isolamento
13. Qual a sintaxe SQL-SELECT errada?
[ x ] SELECT COLUNA1, COLUNA2 FROM TABELA1 WHERE COLUNA3 LIKE ('%X%') ORDER BY 3;
14. Sabemos que a Linguagem SQL é utilizada para acesso a banco de dados e é dividida em comandos DDL, DQL, DML, DCL e DTL. São comandos da DML (Data Manipulation Language)
[ x ] INSERT, UPDATE e DELETE
15. Considere o esquema: Aluno(matricula, cpf, nome, endereço). Assinale a alternativa que não representa uma superchave deste esquema.
[ x ] nome, endereço
16. Uma visão quando aplicada a uma base de dados, é capaz de:
[ x ] Permitir a criação de um conjunto de dados virtual para ser usados em consultas.
17. UM recurso do comando SELECT é a possibilidade de agruparmos nossos dados. Para isso usamos a cláusula:
[ x ] GROUP BY
18. (CONSULPLAN - 2012) Nos SGBDs existem alguns tipos de integridade, dos quais o mais elementar funciona ao nível da coluna do banco de dados. O valor do campo deve obedecer ao tipo de dados e às restrições de valores admitidos para essa coluna. É o tipo conhecido por integridade de:
[ x ] Domínio
19. Os SGBD´s possuem abordagens para otimizar as consultas em um banco de dados. Quando o SGBD não possui no dicionário de dados estatísticas sobre o objeto referenciado, o otimizador aplica regras baseadas na sintaxe dos comandos e define o melhor caminho com o menor número de ranking da análise dos possíveis caminhos.
Marque a alternativa que indica a abordagem denominada para este procedimento.
[ x ] Baseada em regras.
20. Dentre as regras de utilização de NEXTVAL e CURRVAL, qual das opções abaixo NÃO pode ser usada?
[ x ] Na cláusula WHERE de um comando DELETE
21. Os operadores aritméticos, lógicos e de comparação são usados em consultas SQL para?
[ x ] Realizar tarefas como somar ou agrupar valores, comparar valores.
22. Qual das sintaxes abaixo são válidas para o comando INSERT:
[ V ] INSERT INTO TABELA1 (CAMPO1,CAMPO2) (VALOR1,VALOR2);
[ V ] INSERT INTO TABELA1 (CAMPO1,CAMPO2) VALUES (VALOR1,VALOR2);
[ V ] INSERT INTO TABELA1 (CAMPO1,CAMPO2) (SELECT VALOR1, VALOR2 FROM TABELA2); 
DISCURSIVAS
1. Uma loja chamada DVDShop comercializa DVDs em toda a América Latina e utiliza um sistema chamado DVDSystem para controle de estoque e vendas de DVDs. O sistema tem um banco de dados e o gerente da loja precisa consultar SOMENTE o nome do artista principal e o ano de lançamento dos DVDs cadastrados na tabela chamada TabelaDVD, ordenados pelo nome do artista principal dos DVDs em ordem alfabética, diretamente do banco de dados usando um comando em SQL porque a aplicação parou de funcionar. Qual é o comando SQL que o gerente deve executar considerando que a TabelaDVD tem a coluna Titulo para armazenar os títulos dos DVDs e a coluna NomeArtistaPrincipal para armazenar os nomes dos artistas principais dos DVDs e a coluna Ano para armazenar os anos de lançamentos dos DVDs?
Gabarito: SELECT Titulo, Ano FROM TabelaDVD ORDER BY NomeArtistaPrincipal
2. Uma loja chamada DVDShop comercializa DVDs em toda a América Latina e utiliza um sistema chamado DVDSystem para controle de estoque e vendas de DVDs. O sistema tem um banco de dados e o gerente da loja precisa saber o maior preço dos DVDs com a artista principal Julia Roberts que estão cadastrados na tabela chamada TabelaDVD, diretamente do banco de dados usando um comando em SQL porque a aplicação parou de funcionar. Qual é o comando SQL que o gerente deve executar considerando que a TabelaDVD foi criada pelo analista de banco de dados (DBA) usando-se o comando SQL a seguir? USE VENDAS GO CREATE TABLE TabelaDVD ( ID bigint NOT NULL, Titulo nvarchar(50) NULL, NomeArtistaPrincipal nvarchar(50) NULL, Ano smalldatetime NULL, Preco decimal(10,2) NULL ) GO
Gabarito: SELECT MAX (Preco) FROM TabelaDVD WHERE NomeArtistaPrincipal = 'Julia Roberts'
3. Defina otimização heurística de consultas.
Gabarito: Otimização que faz uso de regras heurísticas para melhorar o desempenho da consulta.
4. Uma loja chamada DVDShop comercializa DVDs em toda a América Latina e utiliza um sistema chamado DVDSystem para controle de estoque e vendas de DVDs. O sistema tem um banco de dados e o gerente da loja precisa substituir o título de TODOS os DVDs que tenham o título Pretty Woman para o título Uma Linda Mulher, que estão cadastrados na tabela chamada TabelaDVD, diretamente do banco de dados usando um comando em SQL porque a aplicação parou de funcionar. Qual é o comando SQL que o gerente deve executar considerando que a TabelaDVD foi criada pelo analista de banco de dados (DBA) usando-se o comando SQL a seguir? USE VENDAS GO CREATE TABLE TabelaDVD ( ID bigint NOT NULL, Titulo nvarchar(50) NULL, NomeArtistaPrincipal nvarchar(50) NULL, Ano smalldatetime NULL, Preco decimal(10,2) NULL ) GO
Gabarito: UPDATE TabelaDVD SET Titulo = 'Uma Linda Mulher' WHERE Titulo = PreyWoman'
5. Considere o seguinte esquema relacional: Empregado ( Id, Nome(PK) , Id_Depto(FK Departamento) , Id_Gerente ( FK Empregado), Cargo, Salario) Departamento ( Id(PK), Nome, Id_Regiao(FK Regiao)) Regiao (Id(PK), Nome ) A partir do esquema escreva um comando SQL, utilizando junção, que liste o ID e o Nome dos departamentos que não possuem empregados.
Gabarito: Select d.Id, d.Nome From Departamento d Left Join Empregado e on e.Id_Depto = d.Id Where e.id is null
6. De acordo com a base de dados a seguir, com as tableas Empregado, Cliente e Departamento crie uma consulta, para mostrar os nomes e os salários de todos os empregados que ganham acima da média dos empregados que trabalham no departamento 25.
Gabarito: SELECT PRIM_NOME, SALARIO FROM EMPREGADO WHERE SALARIO > (SELECT AVG(E2.SALARIO) FROM EMPREGADO E2 WHEREE2.ID_DEPTO = 25)
7. Observe a tabela DEPARTAMENTO ilustrada na figura abaixo.
Escreva o comando SQL para inserir a tupla 1 mostrada na tabela acima. Considere a coluna dnome do tipoVARCHAR e dnumero do tipo NUMBER(1).
Gabarito: INSERT INTO departamento VALUES ('Matriz', 1).
8. Defina protocolo de bloqueio. Apresente as principais característica do protocolo de bloqueio em 2 fases
Gabarito: O protocolo de bloqueio serve para garantir que uma execução não sofrera alterações enquanto a transação não estiver concluída. O protocolo de bloqueio possui duas fases o Block_write e o block_read. A primeira bloqueia a consulta para edições e a segunda bloqueia a consulta para leitura. Sendo assim, quando o protocolo de bloqueio esta em execução, a edição ou leitura de determinada informação só é permitida apos a conclusão completa da transação.
9. Defina transação. Cite um exemplo.
Gabarito: Transação é uma sequência de operações tratadas como um bloco único e indivisível. Existem vários exemplos.
10. O modelo abaixo descreve um pequeno sistema imaginário da Confederação Brasileira de Futebol. Com informação de Federações estaduais, times filiados às federações e seus respectivos jogadores.
Baseando-se no modelo de dados acima:
Construa uma instrução SQL para listar a folha de pagamento e a quantidade de jogadores de cada clube.
Projetar o Nome do Clube, Folha de pagamento e quantidade de jogadores, ordenando pela ordem crescente de folha.
Gabarito:
select c.nome as Clube,
sum(i.salario) as Folha,
count(i.cod_jg) as Qtd_Jogadores
from jogador as j,
 clube as c
where c.cod_clube = i.cod_clube
group by c.nome
order by Folha 
11. Considere a seguinte tabela:
Produtos (codigo, nome, codigocategoria, codfornecedor, precounitario, qtdestoque)
Escreva uma instrução SQL que recupere todos os produtos que possuem preço acima da média. Esta listagem deverá conter os seguintes campos: nome do produto e preço unitário. O resultado deve ser ordenado pelo nome do produto.
Gabarito: SELECT NOME, PRECOUNITARIO FROM PRODUTOS WHERE PRECOUNITARIO > (SELECT AVG(PRECOUNITARIO) FROM PRODUTOS ORDER BY NOME
Implementação de Banco de Dados

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes