Pular para o conteúdo principal

Questão de Banco de Dados — Consultas e Comandos em SQL — CESPE / CEBRASPE 2024

Banco de DadosConsultas e Comandos em SQL
Código
ce403599
Banca
CESPE / CEBRASPE
Órgão
CNPq
Ano
2024
Cargo
Ana CT I ( )
Tendo como referência a tabela precedente, de nome dados, julgue o item subsequente, com relação à SQL.   As expressões SQL a seguir geram resultados que são equivalentes. delete from dados; drop table dados;Imagem associada para resolução da questão
  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: DELETE × DROP TABLE

Gabarito: Errado. As expressões DELETE FROM dados e DROP TABLE dados não geram resultados equivalentes: a primeira remove apenas as linhas (tuplas) da tabela, preservando a estrutura da tabela; a segunda remove a tabela inteira, incluindo sua estrutura e definição. São comandos de sublinguagens diferentes — DELETE é DML (Data Manipulation Language) e DROP é DDL (Data Definition Language) — e produzem efeitos distintos no banco de dados.

O comando DELETE FROM dados é um comando de manipulação de dados (DML). Ele apaga as linhas da tabela, mas a tabela em si continua existindo no banco, com suas colunas, tipos, restrições e índices. Após um DELETE, você ainda pode consultar a tabela (ela retornará vazia) e inserir novos dados. Já o comando DROP TABLE dados é um comando de definição de dados (DDL). Ele remove a tabela por completo do banco de dados, incluindo sua estrutura. Após um DROP, a tabela não existe mais; qualquer tentativa de consultá-la ou inserir dados resultará em erro, a menos que a tabela seja recriada com CREATE TABLE.

A diferença fundamental está no escopo da operação: DELETE age sobre os dados (tuplas), enquanto DROP age sobre o objeto (a tabela). Essa distinção é clássica em provas de banco de dados e costuma ser explorada pelas bancas para testar se o candidato domina a classificação dos comandos SQL nas sublinguagens.

Para fixar, veja a comparação:

Critério

DELETE FROM dados

DROP TABLE dados

Sublinguagem

DML (Manipulação)

DDL (Definição)

O que remove

Linhas (tuplas)

A tabela inteira (estrutura + dados)

Estrutura da tabela

Preservada

Removida

Pode ser desfeito com ROLLBACK?

Sim, se dentro de transação

Depende do SGBD (em geral, não)

Tabela continua existindo?

Sim

Não

NÃO CAIA NESSA!

A banca tenta confundir DELETE com DROP (e também com TRUNCATE). O candidato que decora apenas "DELETE apaga dados" e "DROP apaga tabela" pode achar que são equivalentes, mas a diferença é estrutural: DELETE é DML e preserva a tabela; DROP é DDL e elimina a tabela. Lembre-se: TRUNCATE também apaga todas as linhas, mas é DDL e não pode ser desfeito com ROLLBACK em muitos SGBDs — outra pegadinha comum.

SQL: DELETE × DROP
  • 1DELETE FROM dados
    • DML (manipulação)
    • Remove linhas
    • Preserva estrutura
  • 2DROP TABLE dados
    • DDL (definição)
    • Remove tabela inteira
    • Estrutura + dados
LEVEL · soulevel.com.br

Alternativa E — ❌ Incorreta (gabarito)

A afirmação de que as expressões geram resultados equivalentes é falsa. DELETE FROM dados remove apenas as linhas da tabela, mantendo a estrutura; DROP TABLE dados remove a tabela inteira. São comandos de sublinguagens diferentes (DML vs. DDL) e com efeitos distintos. Portanto, o item está errado.

Gabarito: Errado

Link permanente: /questoes/ce403599