Questão nº 38
Questão de Tecnologia da Informação · FCC TRT19 2022 (nº 38)
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
- A`ALTER TABLE departamento AND MODIFY COLUMN nome VARCHAR2(30);`
- B`ALTER COLUMN nome VARCHAR2(30) FROM departamento;`
- C`ALTER TABLE departamento ALTER COLUMN nome VARCHAR2(30);`
- D`MODIFY COLUMN nome TO VARCHAR2(30) FROM departamento;`
- E`ALTER TABLE departamento MODIFY nome VARCHAR2(30);` (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Para mudar as características de uma coluna que já existe em uma tabela, como seu tipo de dado ou tamanho, usamos o comando `ALTER TABLE` junto com uma instrução específica de modificação.
(A) Incorreta: A palavra `AND` não é usada para combinar `ALTER TABLE` com a cláusula de modificação, e `MODIFY COLUMN` não é a sintaxe correta em Oracle.
(B) Incorreta: Esta sintaxe está completamente errada; `ALTER COLUMN` não é um comando autônomo e a forma de especificar a tabela está incorreta.
(C) Incorreta: Esta é a armadilha da banca. Embora `ALTER COLUMN` seja usado em outros bancos de dados (como SQL Server e PostgreSQL) para modificar colunas, em Oracle a palavra-chave correta para essa operação é `MODIFY`.
(D) Incorreta: A sintaxe `MODIFY COLUMN ... TO ... FROM` não é válida em SQL Oracle para essa finalidade.
(E) Correta: Esta é a sintaxe padrão e correta em Oracle para alterar o tipo de dado e/ou tamanho de uma coluna existente: `ALTER TABLE nome_da_tabela MODIFY nome_da_coluna novo_tipo_de_dado(novo_tamanho);`.
Fonte: FCC TRT19 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.