Pular para o conteúdo principal

Questão de Banco de Dados — Banco de Dados Relacionais — CESPE / CEBRASPE 2026

Banco de DadosBanco de Dados Relacionais
Código
ce226969
Banca
CESPE / CEBRASPE
Órgão
SEDUC-PI
Ano
2026
Nível
Superior
Cargo
Professor da Educação Básica - Disciplina: Informática
Sabendo que, no gerenciamento de infraestruturas para Cidade Inteligente (SmartCities), a integridade dos dados coletados por redes de sensores é fundamental para a tomada de decisões e supondo que, após uma manutenção técnica, seja necessário reativar um sensor de fluxo na tabela SENSORES_IOT, alterando seu estado para 'ATIVO', assinale a opção que apresenta o comando SQL que permite modificar o valor desse registro específico sem afetar a estrutura da tabela ou os demais dados armazenados.
  1. ACHANGE SENSORES_IOT STATUS TO 'ATIVO' FOR ID_SENSOR = 500;
  2. BALTER TABLE SENSORES_IOT MODIFY STATUS = 'ATIVO' WHERE ID_SENSOR = 500;
  3. CINSERT INTO SENSORES_IOT (STATUS) VALUES ('ATIVO') WHERE ID_SENSOR = 500;
  4. DSELECT STATUS FROM SENSORES_IOT WHERE ID_SENSOR = 500 AND STATUS = 'ATIVO';
  5. EUPDATE SENSORES_IOT SET STATUS = 'ATIVO' WHERE ID_SENSOR = 500;
Revelar gabarito e comentário

GabaritoE — UPDATE SENSORES_IOT SET STATUS = 'ATIVO' WHERE ID_SENSOR = 500;

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”.

Comandos SQL de atualização de dados

Gabarito: letra E. O comando SQL para modificar o valor de um registro existente sem alterar a estrutura da tabela é o UPDATE, que permite definir novos valores para colunas específicas e filtrar a(s) linha(s) alvo com a cláusula WHERE. A alternativa E segue exatamente a sintaxe correta: UPDATE SENSORES_IOT SET STATUS = 'ATIVO' WHERE ID_SENSOR = 500;.

A questão testa o conhecimento dos comandos DML (Data Manipulation Language) e DDL (Data Definition Language). O enunciado pede um comando que modifique o valor de um registro – portanto, um comando DML, e não DDL. Vamos analisar cada alternativa.

Comandos SQL
  • 1DDL (estrutura)
    • ALTER TABLE
    • CHANGE / MODIFY
  • 2DML (dados)
    • UPDATE
      • SET coluna = valor
      • WHERE condição
    • INSERT (novo registro)
    • SELECT (consulta)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

A sintaxe CHANGE ... TO ... FOR não é válida em SQL. O comando CHANGE existe no MySQL apenas como parte do ALTER TABLE para renomear ou redefinir colunas, nunca para modificar dados. Além disso, não há cláusula FOR na sintaxe padrão.

Alternativa B — ❌ Incorreta

ALTER TABLE é um comando DDL, usado para alterar a estrutura da tabela (adicionar/modificar/excluir colunas, índices, etc.). A cláusula MODIFY também é DDL. A tentativa de usar WHERE em um ALTER TABLE é inválida – o WHERE só existe em comandos DML (UPDATE, DELETE, SELECT). Portanto, essa alternativa não modifica dados, e sim tentaria alterar a definição da coluna, o que está fora do escopo.

Alternativa C — ❌ Incorreta

INSERT INTO é usado para inserir novos registros, não para modificar os existentes. A cláusula WHERE não é aceita no comando INSERT (a menos que seja um INSERT ... SELECT, mas não é o caso). Tentar essa sintaxe resultaria em erro.

Alternativa D — ❌ Incorreta

SELECT é um comando de consulta, não modifica dados. Ele apenas recupera informações, sem qualquer efeito sobre os registros armazenados.

Alternativa E — ✅ Correta ⟵ GABARITO

A sintaxe UPDATE <tabela> SET <coluna> = <valor> WHERE <condição> é a forma correta e padrão para alterar o valor de uma ou mais colunas em registros que atendem à condição. Esse comando opera exclusivamente sobre os dados, mantendo intacta a estrutura da tabela.

PEGA ESSA DICA!

Para gravar a diferença:

  • DDL (Data Definition Language): CREATE, ALTER, DROP – mexe na estrutura.

  • DML (Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE – mexe nos dados.

O comando UPDATE é o único que altera valores de registros existentes entre os DML.

Gabarito: letra E.

Link permanente: /questoes/ce226969