Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FCC 2018

Banco de DadosSQL
Código
fc044244
Banca
FCC
Órgão
DPE-AM
Ano
2018
Cargo
Analista em Gestão Especializado de Defensoria - Analista de Sistema
Para apagar todos os registros da tabela copia_eleitores utiliza-se a instrução SQL
  1. ADELETE FROM copia_eleitores; ou TRUNCATE * FROM copia_eleitores;
  2. BDELETE RECORDS copia_eleitores; ou DROP RECORDS FROM copia_eleitores;
  3. CDELETE * FROM copia_eleitores; ou DELETE RECORDS copia_eleitores;
  4. DDELETE FROM copia_eleitores; ou DELETE * FROM copia_eleitores;
  5. EDELETE RECORDS copia_eleitores; ou TRUNCATE TABLE copia_eleitores;
Revelar gabarito e comentário

GabaritoD — DELETE FROM copia_eleitores; ou DELETE * FROM copia_eleitores;

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: Comandos para apagar registros

Gabarito: letra D. Para apagar todos os registros de uma tabela mantendo sua estrutura, as instruções SQL válidas são DELETE FROM copia_eleitores e TRUNCATE TABLE copia_eleitores. A alternativa D é a única que apresenta DELETE FROM copia_eleitores, que é a sintaxe correta do comando DELETE. Embora também traga DELETE * FROM copia_eleitores, que não é válido no SQL padrão, a banca considera que a presença da instrução correta torna a alternativa verdadeira. As demais alternativas contêm comandos inexistentes ou com sintaxe errada.

A banca testa o conhecimento da sintaxe básica dos comandos de manipulação de dados (DML) e definição de dados (DDL). O comando DELETE FROM tabela remove todas as linhas, enquanto TRUNCATE TABLE tabela também remove todos os registros, mas de forma mais rápida e com menos uso de log. Ambas são aceitas, mas a questão foca no DELETE.

Alternativa A — ❌ Incorreta

  • DELETE FROM copia_eleitores é correto, mas TRUNCATE * FROM copia_eleitores é inválido. TRUNCATE não usa asterisco e a sintaxe correta é TRUNCATE TABLE copia_eleitores. Como uma das opções está errada, a alternativa está incorreta.

Alternativa B — ❌ Incorreta

  • DELETE RECORDS copia_eleitores e DROP RECORDS FROM copia_eleitores são comandos inexistentes em SQL. Não há DELETE RECORDS nem DROP RECORDS.

Alternativa C — ❌ Incorreta

  • DELETE * FROM copia_eleitores é inválido (o asterisco não é usado no DELETE). DELETE RECORDS copia_eleitores também é inválido.

Alternativa D — ✅ Correta ⟵ GABARITO

  • DELETE FROM copia_eleitores é a sintaxe correta para apagar todos os registros. A segunda opção DELETE * FROM copia_eleitores é considerada pela banca como aceitável (embora tecnicamente incorreta). Como há ao menos uma instrução válida e a alternativa é a que melhor se alinha ao comando padrão, ela é o gabarito.

Alternativa E — ❌ Incorreta

  • DELETE RECORDS copia_eleitores é inválido. TRUNCATE TABLE copia_eleitores é correto, mas a presença de um comando inválido torna a alternativa incorreta.

NÃO CAIA NESSA!

A banca explora a confusão entre DELETE e SELECT. Muitos candidatos usam DELETE * FROM por analogia com SELECT * FROM, mas o asterisco não é utilizado no DELETE. A sintaxe correta é DELETE FROM tabela (sem asterisco). Memorize essa diferença para não cair nessa armadilha.

Gabarito: letra D.

Link permanente: /questoes/fc044244