Questão de Banco de Dados — Visão (View) — FCC 2022
Banco de Dados›Visão (View)
Código
fc064936
Banca
FCC
Órgão
TRT - 19ª Região (AL)
Ano
2022
Cargo
Técnico Judiciário - Área Apoio Especializado Especialidade: Tecnologia da Informação
Para alterar o tipo do campo nome para VARCHAR2(30) na tabela departamento de um banco de dados Oracle 11g, aberto e em condições ideais, utiliza-se o comando
AALTER TABLE departamento AND MODIFY COLUMN nome VARCHAR2(30);
BALTER COLUMN nome VARCHAR2(30) FROM departamento;
CALTER TABLE departamento ALTER COLUMN nome VARCHAR2(30);
DMODIFY COLUMN nome TO VARCHAR2(30) FROM departamento;
EALTER TABLE departamento MODIFY nome VARCHAR2(30);
Revelar gabarito e comentário▾
GabaritoE — ALTER TABLE departamento MODIFY nome VARCHAR2(30);
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”.
Oracle: Comando ALTER TABLE MODIFY
Gabarito: letra E. No Oracle 11g, a sintaxe correta para alterar o tipo de uma coluna é ALTER TABLE nome_tabela MODIFY nome_coluna novo_tipo. As demais alternativas utilizam sintaxes de outros SGBDs (como ALTER COLUMN do MySQL/SQL Server) ou são inválidas.
A banca testa o conhecimento da sintaxe específica do Oracle, que difere da maioria dos outros SGBDs. Enquanto no Oracle usa-se MODIFY, no MySQL e SQL Server o comando é ALTER COLUMN. Veja a comparação:
SGBD
Comando para modificar coluna
Oracle
ALTER TABLE ... MODIFY coluna tipo
MySQL
ALTER TABLE ... MODIFY COLUMN coluna tipo (ou ALTER COLUMN)
SQL Server
ALTER TABLE ... ALTER COLUMN coluna tipo
NÃO CAIA NESSA!
A banca explora a confusão entre as sintaxes dos SGBDs. O candidato pode lembrar do ALTER COLUMN do MySQL/SQL Server e aplicá-lo ao Oracle. Lembre-se: no Oracle, o comando de modificação de coluna é MODIFY, não ALTER COLUMN.
Alternativa A — ❌ Incorreta
ALTER TABLE departamento AND MODIFY COLUMN nome VARCHAR2(30); — A palavra AND é inválida nesse contexto. A sintaxe correta não utiliza AND entre a tabela e a modificação.
Alternativa B — ❌ Incorreta
ALTER COLUMN nome VARCHAR2(30) FROM departamento; — ALTER COLUMN é sintaxe do SQL Server/MySQL, não do Oracle. Além disso, a cláusula FROM não é usada para modificar colunas.
Alternativa C — ❌ Incorreta
ALTER TABLE departamento ALTER COLUMN nome VARCHAR2(30); — Novamente, ALTER COLUMN não é a sintaxe Oracle. Apesar de ALTER TABLE estar correto, o uso de ALTER COLUMN torna o comando inválido para o Oracle.
Alternativa D — ❌ Incorreta
MODIFY COLUMN nome TO VARCHAR2(30) FROM departamento; — A ordem e as cláusulas estão incorretas. O comando deve iniciar com ALTER TABLE, e MODIFY não é seguido de COLUMN nem de TO/FROM.
Alternativa E — ✅ Correta ⟵ GABARITO
ALTER TABLE departamento MODIFY nome VARCHAR2(30); — Esta é a sintaxe padrão do Oracle: ALTER TABLE seguido do nome da tabela, MODIFY e a definição da coluna com seu novo tipo.