Questão de Banco de Dados — MySQL — FGV 2023
- Código
- fg063725
- Banca
- FGV
- Órgão
- DPE-RS
- Ano
- 2023
- Nível
- Médio
- Cargo
- Técnico - Apoio Especializado - Programador
- ADROP;
- BDELETE;
- CTRUNCATE;
- DREVERSE;
- EREPLACE.
GabaritoA — DROP;
Gabarito: letra A. Para remover completamente uma tabela do banco de dados (estrutura e dados), utiliza-se o comando DROP TABLE. As demais alternativas ou não existem ou têm finalidades diferentes: DELETE e TRUNCATE removem apenas os dados, enquanto REVERSE e REPLACE não são comandos de exclusão de tabelas.
A banca FGV cobra o conhecimento da diferença entre os comandos DDL (Data Definition Language) e DML (Data Manipulation Language). O comando DROP é um comando DDL que elimina definitivamente a tabela do banco de dados.
O comando DROP TABLE é específico para deletar uma tabela existente, removendo sua estrutura e todos os dados contidos. A sintaxe básica é:
DROP TABLE nome_da_tabela;Como a questão pede para apagar a tabela criada (e não apenas seus registros), essa é a alternativa correta.
O comando DELETE é um comando DML utilizado para remover linhas (registros) de uma tabela, mas não remove a estrutura da tabela. Se o objetivo for apagar a tabela por completo, DELETE não é suficiente. Além disso, DELETE permite filtros com WHERE, enquanto DROP não.
O comando TRUNCATE é um comando DDL que remove todas as linhas de uma tabela, mas mantém a estrutura da tabela (colunas, índices, etc.) para uso futuro. Ele é mais rápido que DELETE, porém não apaga a definição da tabela. Para apagar a tabela, precisa-se do DROP.
REVERSE não é um comando SQL padrão. Não existe no MySQL nem em outros SGBDs relacionais principais. Provavelmente é um distrator para confundir o candidato.
REPLACE é um comando DML utilizado para inserir um novo registro ou substituir um registro existente caso haja conflito de chave primária/única. Não serve para apagar tabelas.
Para fixar a diferença, lembre-se da seguinte tabela resumo:
Comando | O que faz | Mantém a estrutura? | Categoria |
|---|---|---|---|
DROP | Remove completamente a tabela (estrutura + dados) | Não | DDL |
TRUNCATE | Remove todos os dados, mas mantém a estrutura | Sim | DDL |
DELETE | Remove registros (pode ser condicional) | Sim | DML |
REPLACE | Insere ou substitui registros | Sim | DML |
Gabarito: letra A.
Link permanente: /questoes/fg063725