Questão de Banco de Dados — Banco de Dados Relacionais — CESPE / CEBRASPE 2026
Banco de Dados›Banco 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.
ACHANGE SENSORES_IOT STATUS TO 'ATIVO' FOR ID_SENSOR = 500;
BALTER TABLE SENSORES_IOT MODIFY STATUS = 'ATIVO' WHERE ID_SENSOR = 500;
CINSERT INTO SENSORES_IOT (STATUS) VALUES ('ATIVO') WHERE ID_SENSOR = 500;
DSELECT STATUS FROM SENSORES_IOT WHERE ID_SENSOR = 500 AND STATUS = 'ATIVO';
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.