Às vezes, o nome da nossa coluna não é significativo, por isso é necessário renomear ou alterar o nome da coluna. MySQL fornece uma sintaxe útil que pode renomear uma ou mais colunas na tabela. Poucos privilégios são essenciais antes de renomear a coluna, como privilégios de instrução ALTER e DROP.
O MySQL pode renomear o nome da coluna de duas maneiras:
- Usando a instrução CHANGE
- Usando a instrução RENAME
Usando a instrução CHANGE:
A seguir está a sintaxe que ilustra a renomeação da coluna usando a instrução CHANGE:
ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name Data Type;
Nesta sintaxe, podemos ver que podemos exigir a reespecificação de todos os atributos da coluna. Esta sintaxe também pode nos permitir alterar os tipos de dados da coluna. Mas, às vezes, a instrução CHANGE pode ter as seguintes desvantagens:
- Todas as informações dos atributos da coluna podem não estar disponíveis para o aplicativo renomear.
- Existe o risco de alteração acidental do tipo de dados que pode resultar na perda de dados do aplicativo.
Exemplo
Vamos entender como a instrução CHANGE funciona em MySQL para renomear uma coluna através dos vários exemplos. Suponha que temos uma tabela chamada equilíbrio que contém os dados da seguinte forma:
Por algum motivo, precisamos mudar o nome da coluna account_num junto com seu tipo de dados . Nesse caso, primeiro verificamos a estrutura da tabela usando o DESCREVER declaração da seguinte forma:
Nesta imagem, podemos ver que o tipo de dados do nome da coluna núm_conta é interno . E queremos mudar o nome desta coluna como conta_não e seu tipo de dados como int para varchar . Assim, podemos executar a instrução abaixo para fazer isso:
mysql> ALTER TABLE balance CHANGE COLUMN account_num account_no VARCHAR(25);
Depois de executar o comando acima, podemos verificá-lo usando a instrução DESCRIBE novamente. Na imagem abaixo, o nome da coluna account_num e seu tipo de dados foram alterados com sucesso.
Usando a instrução RENAME:
Para remover a desvantagem de uma instrução CHANGE, o MySQL propôs a seguinte sintaxe que ilustra a alteração do nome da coluna usando uma instrução RENAME:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
Exemplo
Vamos entender como funciona a instrução RENAME no MySQL para alterar o nome da coluna através de vários exemplos. Suponha que temos uma tabela chamada cliente que contém os seguintes dados:
Suponha que queiramos alterar o nome da coluna conta com conta_não sem alterar seus tipos de dados. Podemos fazer isso executando a instrução abaixo:
mysql> ALTER TABLE customer RENAME COLUMN account to account_no;
Depois de executar o comando acima, podemos verificá-lo usando o SELECIONAR declaração novamente. Na imagem abaixo, o nome da coluna conta foi alterado com sucesso.
Renomeando múltiplas colunas
O MySQL também nos permite alterar os nomes de múltiplas colunas em uma única instrução. Se quisermos renomear vários nomes de colunas, podemos usar a sintaxe abaixo:
ALTER TABLE table_name CHANGE old_column_name1 new_column_name1 Data Type, CHANGE old_column_name2 new_column_name2 Data Type, ... ... CHANGE old_column_nameN new_column_nameN Data Type;
OU
ALTER TABLE table_name RENAME COLUMN old_column_name1 TO new_column_name1, RENAME COLUMN old_column_name2 TO new_column_name2, ... ... RENAME COLUMN old_column_nameN TO new_column_nameN;
Exemplo
Suponha que queiramos mudar nomes de colunas id e customer_name de mesa do cliente . Para alterar vários nomes de colunas em uma única instrução, podemos usar a instrução da seguinte maneira:
mysql> ALTER TABLE customer CHANGE id cust_id int, CHANGE customer_name cust_name varchar(45);
Depois de executar o comando acima, podemos verificá-lo usando a instrução SELECT novamente. Na imagem abaixo, o nome da coluna id e customer_name foram alterados com sucesso:
Vamos alterar novamente o nome da coluna atualmente modificado por meio da instrução RENAME COLUMN da seguinte maneira:
mysql> ALTER TABLE customer RENAME COLUMN cust_id TO id, RENAME COLUMN cust_name TO customer_name;
Depois de executar o comando acima, podemos verificá-lo usando a instrução DESCRIBE novamente. Na imagem abaixo, o nome da coluna cust_id e cust_name foram alterados com sucesso:
Neste artigo, aprendemos uma introdução à coluna MySQL RENAME e como alterar o nome da coluna em uma tabela especificada, junto com um exemplo de consulta para melhor compreensão.