Pular para o conteúdo principal

Questão de Banco de Dados — SQL — Quadrix 2025

Banco de DadosSQL
Código
qg595119
Banca
Quadrix
Órgão
CFO
Ano
2025
Nível
Médio
Cargo
Técnico em Tecnologia da Informação
O armazenamento de dados nos computadores modernos requer recursos de hardware sofisticados e rápidos. Considerando essa informação, julgue o item seguinte.O uso de SQL (Structured Query Language) permite que os dados sejam manipulados diretamente, sem a necessidade de estruturas como índices ou chaves, pois as consultas SQL são sempre otimizadas automaticamente pelo SGBD.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

SQL e otimização de consultas

Gabarito: ERRADO (letra E). A afirmação está incorreta porque, embora o SQL seja uma linguagem declarativa que permite ao usuário especificar o que deseja, sem detalhar como obter, o SGBD não dispensa estruturas como índices e chaves — pelo contrário, ele as utiliza justamente para otimizar a execução das consultas. A otimização automática feita pelo SGBD depende dessas estruturas para acelerar o acesso aos dados.

O SQL (Structured Query Language) é a linguagem padrão para acesso e manipulação de bancos de dados relacionais. Sua principal característica é ser declarativa (ou não procedural): o usuário especifica o resultado desejado, e o SGBD decide internamente a melhor forma de executar a consulta. Isso não significa, porém, que estruturas como índices e chaves sejam desnecessárias. Pelo contrário, elas são fundamentais para o desempenho.

Os índices são estruturas de dados auxiliares (como árvores B ou tabelas hash) que o SGBD consulta para localizar rapidamente os registros que atendem a uma condição, evitando a varredura completa da tabela. As chaves (primárias e estrangeiras) garantem a integridade dos dados e também são usadas pelo otimizador para escolher o plano de execução mais eficiente. Sem essas estruturas, o SGBD teria que percorrer todas as linhas de uma tabela para responder a uma consulta, o que seria extremamente lento em bancos de dados grandes.

O otimizador de consultas do SGBD analisa a consulta SQL e escolhe o plano de execução mais eficiente, considerando fatores como a existência de índices, as estatísticas das tabelas e as operações de junção. Ele não "cria" índices automaticamente; ele apenas os utiliza se eles existirem. A criação de índices é uma decisão de projeto do administrador do banco de dados, baseada nos padrões de consulta da aplicação.

Um exemplo prático: em uma tabela Clientes com milhões de registros, uma consulta SELECT * FROM Clientes WHERE CPF = '123.456.789-00' será executada muito mais rapidamente se existir um índice sobre a coluna CPF. Sem o índice, o SGBD precisaria ler todas as linhas da tabela para encontrar o registro desejado. O otimizador reconhece a existência do índice e o utiliza, mas se ele não existir, a consulta será lenta.

A pegadinha da questão está em afirmar que o SQL dispensa índices e chaves. Na verdade, o SQL é uma linguagem que depende dessas estruturas para ter um bom desempenho. A otimização automática do SGBD é uma vantagem, mas ela não elimina a necessidade de um bom projeto físico do banco de dados, que inclui a criação adequada de índices.

NÃO CAIA NESSA!

A banca tenta fazer o candidato acreditar que a natureza declarativa do SQL torna desnecessárias as estruturas físicas de otimização. A confusão está em pensar que "declarativo" significa "sem necessidade de otimização". Na verdade, o SGBD otimiza usando índices e chaves, não apesar deles. Lembre-se: o otimizador é um consumidor dessas estruturas, não um substituto delas.

1Linguagem declarativa
Especifica o que deseja
SGBD decide como executar
2Otimização automática
Usa índices e chaves
Não os cria sozinho
3Índices
Árvores B / hash
Evitam varredura completa
4Chaves
Integridade dos dados
Auxiliam o otimizador
SQL
LEVELsoulevel.com.br
SQL: Linguagem declarativa (Especifica o que deseja, SGBD decide como executar); Otimização automática (Usa índices e chaves, Não os cria sozinho); Índices (Árvores B / hash, Evitam varredura completa); Chaves (Integridade dos dados, Auxiliam o otimizador)

Alternativa E — ❌ Incorreta ⟵ GABARITO

A afirmação está errada por dois motivos principais:

  1. O SQL não dispensa índices e chaves: essas estruturas são essenciais para o desempenho das consultas. O SGBD as utiliza para otimizar a execução, mas não as cria automaticamente para cada consulta.

  2. A otimização automática não é "sempre" perfeita: embora o SGBD otimize consultas, a eficiência depende de fatores como a existência de índices adequados, estatísticas atualizadas e a complexidade da consulta. O usuário pode influenciar a otimização por meio de boas práticas de escrita SQL e do projeto físico do banco.

A alternativa correta seria afirmar que o SQL é uma linguagem declarativa que permite ao usuário especificar o resultado desejado, e que o SGBD é responsável por otimizar a execução, utilizando estruturas como índices e chaves para melhorar o desempenho.

Gabarito: letra E (ERRADO).

Link permanente: /questoes/qg595119