Questões de Concurso Sobre sql em banco de dados

Foram encontradas 4.612 questões

Q4052467 Banco de Dados
No contexto da OWASP Top 10, o ataque de SQL Injection ocorre quando entradas não confiáveis são interpretadas como parte de comandos SQL. Analise as afirmativas a seguir:
I.O uso de Prepared Statements (consultas parametrizadas) separa a lógica do comando SQL dos dados fornecidos, evitando que a entrada do usuário seja interpretada como código.
II.O ataque de SQL Injection pode ocorrer em diferentes tipos de comandos SQL, como SELECT, INSERT, UPDATE e DELETE.
III.O uso de ORMs (Object-Relational Mappers) elimina completamente o risco de SQL Injection, independentemente da forma como as consultas são construídas.

É correto o que se afirma em:
Alternativas
Q4048570 Banco de Dados

Um analista precisa extrair dados de diferentes tabelas do Sistema Integrado de Administração Financeira (SIAFI) para gerar um relatório complexo sobre despesas com pessoal. O relatório deve combinar informações de servidores, lotações, remunerações e descontos. Para isso, ele precisa construir uma consulta SQL avançada que utilize diferentes tipos de junções (JOINs).


Associe os tipos de junções SQL da Coluna A com suas respectivas descrições e resultados na Coluna B, no contexto da consulta ao banco de dados do SIAFI.


Coluna A

 1. INNER JOIN

 2. LEFT JOIN (ou LEFT OUTER JOIN)

 3. FULL OUTER JOIN

 4. CROSS JOIN


Coluna B (__) Retorna todos os registros da tabela de servidores (à esquerda) e os registros correspondentes da tabela de remunerações (à direita). Se um servidor não tiver remuneração registrada no período, seus dados ainda aparecerão no resultado, com valores nulos para as colunas de remuneração. (__) Retorna o produto cartesiano entre a tabela de categorias de despesa e a tabela de fontes de recurso, combinando cada categoria com cada fonte, sendo útil para criar um universo de todas as combinações possíveis para análise de cenários orçamentários. (__) Retorna apenas os registros que possuem correspondência em ambas as tabelas, por exemplo, ao combinar a tabela de servidores com a de lotações, o resultado incluirá apenas os servidores que têm uma lotação válida e ativa registrada no sistema. (__) Retorna todos os registros quando há uma correspondência em qualquer uma delas, preenchendo com valores nulos as lacunas onde não houver match. Por exemplo, ao unir a tabela de empenhos e a tabela de pagamentos, o resultado mostraria todos os empenhos (mesmo os não pagos) e todos os pagamentos (mesmo os de empenhos de exercícios anteriores).

A sequência correta de preenchimento dos parênteses, de cima para baixo, é: 

Alternativas
Ano: 2026 Banca: FSA Órgão: FSA-SP Prova: FSA - 2026 - FSA-SP - Desenvolvedor de Software |
Q4045707 Banco de Dados

Em uma instituição de ensino superior, foi necessário criar um banco de dados para controlar os projetos científicos e a participação dos pesquisadores. Para isso, foram criadas as tabelas Pesquisador, Area_Conhecimento e Projeto por meio dos scripts SQL abaixo: 



Imagem associada para resolução da questão



Deseja-se listar o nome dos pesquisadores que atuam como bolsistas, juntamente com a carga horária semanal dos projetos, exibindo apenas registros com correspondência entre as tabelas e ordenando em ordem decrescente de carga horária.



Assinale a alternativa correta:

Alternativas
Ano: 2026 Banca: FSA Órgão: FSA-SP Prova: FSA - 2026 - FSA-SP - Desenvolvedor de Software |
Q4045704 Banco de Dados

Em um sistema corporativo de gestão de pessoas, os dados dos colaboradores estão distribuídos em diferentes entidades relacionais, de forma a garantir integridade e evitar redundâncias. Um analista precisa construir uma consulta que permita extrair informações consolidadas para fins gerenciais. Considere as seguintes tabelas:



TABELA_PESSOAS (ID_PESSOA, NOME, CPF)


TABELA_CONTRATOS (MATRICULA, ID_PESSOA, SALARIO, COD_SETOR)


TABELA_SETORES (COD_SETOR, NOME_SETOR)



O analista elaborou a seguinte consulta SQL: 



Imagem associada para resolução da questão


Com base na consulta apresentada e no comportamento dos operadores relacionais em SQL padrão, analise as afirmativas a seguir:



I. A consulta retornará exclusivamente colaboradores que possuam contrato com remuneração superior a 2000 e que estejam vinculados a um setor válido cadastrado, excluindo implicitamente quaisquer registros com ausência de correspondência nas tabelas relacionadas.


II. Caso existam contratos com o campo COD_SETOR nulo ou com valores que não possuam correspondência na tabela de setores, tais registros serão desconsiderados no resultado, ainda que atendam ao critério de remuneração.


III. Ao realizar um RIGHT JOIN entre a TABELA_PESSOAS e a TABELA_CONTRATOS, o SQL Server garantirá que todos os registros de pessoas sejam exibidos no resultado final, mesmo aqueles que não possuem contrato vinculado, preenchendo os campos da tabela de contratos com valores NULL.


IV. A consulta apresentada pode retornar colaboradores que não possuem registro correspondente na TABELA_CONTRATOS, desde que estejam cadastrados na TABELA_PESSOAS e atendam ao critério de salário informado.



Assinale a opção correta: 

Alternativas
Q4041494 Banco de Dados
 Em SQL (Structured Query Language), consultas envolvendo mais de uma tabela podem ser realizadas de diferentes formas, dependendo do objetivo desejado.
Observe as tabelas abaixo: 


Imagem associada para resolução da questão


O código que retornará como resultado um produto cartesiano entre tb_livro e tb_autor é:  
Alternativas
Q4038045 Banco de Dados
Considerando o quadro abaixo, contido em um hipotético banco de dados relacional, analise as afirmativas a seguir e assinale a alternativa correta.


Imagem associada para resolução da questão


I. O comando "SELECT titulo FROM Livro WHERE ano > 1900;" retornaria os valores Vidas Secas, Grande Sertão: Veredas, Capitães da Areia e A Hora da Estrela.
II. O comando "SELECT titulo FROM Livro WHERE autor IN (SELECT autor FROM Livro GROUP BY autor HAVING COUNT(titulo) > 1);" retornaria os valores O Guarani, Iracema, O Primo Basílio e Quincas Borba.
III. O comando "SELECT ano FROM Livro WHERE ano < 1870;" retornaria os valores O Guarani, Iracema e A Moreninha.
IV. O comando "SELECT titulo FROM Livro WHERE autor >= 'A' AND autor < 'I';" retornaria os valores O Cortiço, A Hora da Estrela, O Primo Basílio e Vidas Secas.
Alternativas
Q4037404 Banco de Dados
São comandos padrão da linguagem SQL (Structured Query Language), EXCETO:
Alternativas
Q4036229 Banco de Dados
Um Analista de Sistemas foi encarregado de desenvolver um relatório gerencial utilizando a Structured Query Language (SQL). Nesse relatório, ele precisa agrupar registros do banco de dados institucional e, posteriormente, aplicar condições sobre esses grupos, considerando resultados de funções de agregação, de modo a exibir apenas os grupos que atendam a determinados critérios estabelecidos pela gestão.
Nesse contexto, qual cláusula SQL deve ser utilizada pelo Analista para atender a essa necessidade?
Alternativas
Q4036228 Banco de Dados
Um Analista de Sistemas está desenvolvendo um procedimento armazenado no SQL Server e precisa criar uma variável inteira para armazenar a contagem de registros processados durante a execução de uma rotina. Considerando a sintaxe do T-SQL avançado, qual comando cria CORRETAMENTE uma variável inteira chamada contador?
Alternativas
Q4036221 Banco de Dados
Um Analista de Sistemas está realizando uma série de operações no banco de dados institucional utilizando a Structured Query Language (SQL). Durante a execução de uma transação que envolve várias alterações consecutivas, ele define pontos de salvamento para garantir maior controle sobre as operações realizadas. Em determinado momento, o Analista identifica um erro em uma das etapas mais recentes da transação e decide desfazer apenas as operações realizadas após um ponto de salvamento específico, mantendo válidas as alterações realizadas anteriormente dentro da mesma unidade de trabalho. Nesse contexto, qual comando SQL deve ser utilizado para realizar essa operação?
Alternativas
Q4036217 Banco de Dados
Um Analista de Sistemas, que atua em uma agência de fomento vinculada ao setor governamental, está configurando o controle de acesso ao banco de dados institucional. Durante a administração do ambiente, surgiu a necessidade de permitir que determinados usuários acessem e manipulem objetos específicos do banco de dados, como tabelas e visões, de acordo com suas responsabilidades funcionais, utilizando comandos apropriados da Structured Query Language (SQL). Nesse contexto, qual comando SQL deve ser utilizado para atender a essa necessidade?
Alternativas
Q4036210 Banco de Dados

Um Analista de Sistemas está desenvolvendo relatórios para uma agência de fomento. Ele precisa listar os nomes dos funcionários que atendam a todas as seguintes condições:


• Atuam no departamento de Finanças;
• Recebem salário superior a R$ 5.000,00;
• Possuem dependentes do sexo feminino.

Considerando as tabelas Funcionarios, Departamentos e Dependentes, qual consulta SQL retorna CORRETAMENTE os resultados desejados?

Alternativas
Q4033749 Banco de Dados

O domínio da linguagem SQL exige do analista a compreensão da correta ordem de execução lógica e restrição de cláusulas de agregação. Considere o seguinte modelo de dados relacional de uma instituição acadêmica (chaves primárias sublinhadas):


Pesquisador (ID_Pesq, Nome)

Projeto (ID_Proj, Titulo)

Atuacao (ID_Pesq, ID_Proj, Horas_Semanais)


Um analista precisa escrever uma consulta SQL que retorne o nome dos pesquisadores e a quantidade de projetos em que atuam, considerando apenas as atuações com mais de 10 horas semanais. Além disso, o relatório final deve exibir apenas os pesquisadores que possuam participação em mais de 2 projetos (já obedecendo ao critério mínimo de horas). O resultado deve ser ordenado pela quantidade de projetos em ordem decrescente.



Assinale a alternativa que apresenta o comando SQL sintática e logicamente correto para satisfazer todos os requisitos dessa regra de negócio.

Alternativas
Q4033748 Banco de Dados

Considere um banco de dados relacional de um e-commerce composto pelas seguintes tabelas e suas respectivas colunas, com os tipos de dados estritamente indicados (chaves primárias sublinhadas):


Cliente (ID_Cliente INT, Nome VARCHAR(100))

Produto (ID_Produto INT, Tipo VARCHAR(50), Valor DECIMAL(10,2))

Compra (ID_Compra INT, ID_Cliente INT, ID_Produto INT, Data_Compra DATE)


Um analista de dados precisa gerar um relatório que retorne os nomes dos clientes que compraram produtos do tipo 'livro' durante o mês de dezembro (independentemente do ano), ordenados a partir daqueles que realizaram a maior quantidade de compras para os de menor quantidade. Assinale a alternativa que apresenta o comando SQL correto para obter esse resultado.

Alternativas
Q4033747 Banco de Dados

Considere o seguinte comando SQL executado em um banco de dados:


SELECT COUNT(ID), AVG(Valor), Tipo

FROM Transacoes

WHERE CAST(Valor AS VARCHAR) LIKE '1%'

GROUP BY Tipo

HAVING COUNT(ID) > 10;


Assinale a alternativa que apresenta a correta descrição do resultado produzido pela execução desse comando.

Alternativas
Q4033746 Banco de Dados

Considere que um administrador de banco de dados (DBA) deseja criar uma nova tabela para registrar os colaboradores de uma empresa. A regra de negócio exige que a matrícula atue como o identificador principal e exclusivo do registro, que o nome seja um texto de tamanho variável (até 100 caracteres) com preenchimento obrigatório, e que exista uma coluna temporal para armazenar a data de contratação. O comando SQL a ser executado para atender a essa especificação é:


CREATE TABLE funcionario (

    matricula INT ____________,

    nome ____________(100) ____________,

    data_contratacao ____________

);


Assinale a alternativa que preenche, correta e respectivamente, as lacunas do script acima.

Alternativas
Q4032642 Banco de Dados

SQL é uma linguagem padrão utilizada em sistemas gerenciadores de bancos de dados relacionais para consulta e manipulação de dados. Considere o comando abaixo:



SELECT departamento, COUNT(*) AS total, MAX(salario) AS


maior_salario


FROM funcionarios


WHERE cargo <> 'Estagiario'


GROUP BY departamento


HAVING COUNT(*) >= 3


ORDER BY maior_salario DESC;



Com base nesse comando, assinale a alternativa CORRETA.

Alternativas
Q4032641 Banco de Dados

Uma analista está desenvolvendo um relatório em um sistema de vendas para identificar clientes cujo valor total de pedidos ultrapassou R$ 500,00 no mês corrente. A consulta utiliza as cláusulas JOIN e GROUP BY com a função de agregação SUM. Ao testar a consulta, ela percebeu que precisava filtrar os grupos com base no valor calculado pela agregação. Nesse contexto, qual cláusula SQL deve ser utilizada para filtrar grupos com base no resultado de uma função de agregação?

Alternativas
Q4032139 Banco de Dados
Em SQL, qual comando DCL é utilizado para revogar a permissão de SELECT sobre uma tabela? 
Alternativas
Q4032135 Banco de Dados

Diante de um sistema com banco de dados relacional SQL Server com determinadas tabelas, conforme apresenta o quadro abaixo, equipe de RH necessita de um relatório que apresente o nome de cada secretaria e a média salarial dos servidores lotados nela que tenham sido admitidos há mais de 5 anos, listando somente as secretarias cuja média salarial desse grupo supere a média salarial de todos os servidores do município, com o resultado ordenado da maior para a menor média.

SERVIDORES (id_servidor, nome, id_lotacao, data_admissao, salario)
LOTACOES (id_lotacao, nome_lotacao, id_secretaria)
SECRETARIAS (id_secretaria, nome_secretaria, orcamento anual)

Assim, assinale a alternativa que contém o comando SQL capaz de atender CORRETAMENTE a esse requisito.

Alternativas
Respostas
21: C
22: C
23: A
24: A
25: D
26: C
27: D
28: B
29: C
30: C
31: E
32: E
33: B
34: A
35: D
36: D
37: C
38: D
39: B
40: C