Questão nº 42
Questão de Infraestrutura e Banco de Dados · FCC MPEPE 2018 (nº 42)
O comando do sistema gerenciador de bancos de dados PostgreSQL (9.5) que permite substituir, em um banco de dados, o nome de uma tabela chamada `cliente`, para a denominação `paciente` é
- A`CHANGE TABLE cliente WITH paciente;`
- B`CASCADE TABLE cliente → paciente;`
- C`ALTER TABLE cliente RENAME TO paciente;` (alternativa correta)
- D`CONTROL TABLE cliente AS paciente;`
- E`MODIFY TABLE cliente FOR paciente;`
Resposta comentada
Gabarito Alternativa C
Para modificar a estrutura ou o nome de objetos em um banco de dados SQL, como tabelas, colunas ou restrições, utiliza-se o comando `ALTER`. Para renomear uma tabela, a sintaxe padrão é `ALTER TABLE <nome_antigo> RENAME TO <nome_novo>`.
(A) Incorreta: O comando `CHANGE TABLE` não é uma sintaxe padrão SQL para renomear tabelas. Embora "change" signifique "mudar", a palavra-chave correta é `ALTER`. Esta é a armadilha da banca, pois `CHANGE TABLE` soa como algo que faria sentido para um iniciante, mas não corresponde à sintaxe SQL padrão.
(B) Incorreta: `CASCADE` é uma cláusula usada para propagar ações (como exclusão) para objetos dependentes, e não para renomear tabelas. O símbolo `→` também não faz parte da sintaxe SQL para esta finalidade.
(C) Correta: O comando `ALTER TABLE` é o padrão SQL para modificar a definição de uma tabela. A cláusula `RENAME TO` é a forma correta e específica para alterar o nome da tabela no PostgreSQL e na maioria dos sistemas de gerenciamento de bancos de dados relacionais.
(D) Incorreta: `CONTROL TABLE` não é um comando SQL válido para renomear tabelas. A palavra-chave `AS` é usada para alias ou para definir novos objetos, não para renomear um objeto existente neste contexto.
(E) Incorreta: `MODIFY TABLE` não é um comando SQL padrão para renomear tabelas. `MODIFY` é ocasionalmente usado dentro de `ALTER TABLE` para modificar definições de colunas, mas não para o nome da tabela em si, e `FOR` não é usado dessa forma.
Fonte: FCC MPEPE 2018 Analista Ministerial - Área Informática (Caderno Tipo 1). Reproduzida para fins de estudo.