Dado que o MySql 5 não dispõe de comando SQL específico par...

Próximas questões
Com base no mesmo assunto
Q314424 Banco de Dados
Acerca da linguagem SQL nos bancos de dados MySql e Oracle, julgue os itens de 59 a 61.

Dado que o MySql 5 não dispõe de comando SQL específico para se renomear uma tabela, devem ser realizadas duas operações: inicialmente, a exclusão da tabela, por meio do comando DROP TABLE nome_da_tabela; e, posteriormente, sua criação, por meio do comando CREATE TABLE novo_nome_da_tabela; diferentemente, portanto, do procedimento a ser adotado no Oracle 11g, cujo comando SQL ALTER TABLE nome_da_tabela RENAME novo_nome_da_tabela é específico para essa operação.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: E - Errado

Vamos elucidar o porquê da alternativa ser incorreta. A questão falha ao afirmar que o MySQL não possui um comando específico para renomear tabelas. Em realidade, o MySQL sim dispõe de um comando para esta operação. O comando é o RENAME TABLE, que é utilizado para alterar o nome de uma tabela existente.

Portanto, ao contrário do que sugere a questão, não é necessário excluir a tabela e depois recriá-la com um novo nome. A sintaxe correta para renomear uma tabela em MySQL seria algo semelhante a:

RENAME TABLE nome_da_tabela TO novo_nome_da_tabela;

Este comando é suficiente para renomear a tabela, e é muito mais prático e seguro do que excluir e recriar a tabela, pois mantém a estrutura da tabela e os dados intactos.

Além disso, a questão menciona o procedimento no Oracle 11g, que é realizado pelo comando ALTER TABLE seguido por RENAME TO, o qual está correto e é específico para renomear tabelas no Oracle.

Em resumo, o conhecimento errôneo sobre as capacidades do MySQL foi a base para a alternativa incorreta. Conhecer os comandos SQL disponíveis e suas diferenças entre os SGBDs (Sistemas de Gerenciamento de Banco de Dados) é fundamental para profissionais da área e para quem está se preparando para concursos públicos com foco em Banco de Dados.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Errado.

O MySQL 5 possui sim um comando específico para mudar o nome da tabela:
RENAME TABLE tbl_name TO new_tbl_name Fonte: http://dev.mysql.com/doc/refman/5.0/en/rename-table.html

além do mysql possuir rename table, a sintaxe apresentada pro oracle está incorreta (basta rename table_old to table_new)

Caro Luiz,

A sintaxe para renomear tabela no Oracle só está errada, pois não há a palavra TO. O Oracle aceita o comando ALTER TABLE ... RENAME TO ..;

SQL> create table teste (id number);
Table created.

SQL> alter table teste rename to teste_2;
Table altered.

SQL> rename teste_2 to teste;
Table renamed.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo