Às vezes, você pode precisar alterar o nome da coluna no MySQL ou renomear o nome da coluna sem alterar seu tipo. Veja como renomear a coluna na consulta MySQL.
Como alterar o nome da coluna no MySQL
Aqui estão as etapas para alterar o nome da coluna na consulta MySQL usando a instrução MySQL ALTER TABLE.
Renomear coluna no MySQL 5.6.xe 5.7.x
Aqui está a consulta SQL para renomear a coluna no MySQL.
ALTER TABLE table_name CHANGE old_column_name new_column_name <column definition>;
Na consulta acima, você precisa mencionar table_name após ALTER TABLE, old_column_name e new_column_name após a palavra-chave CHANGE. Você também precisa mencionar toda a definição de coluna da sua coluna, mesmo que não haja alterações nela. Caso contrário, o MySQL alterará os atributos não declarados para o valor padrão.
Por exemplo, se você tiver uma restrição NOT NULL em sua coluna MySQL, mas não mencioná-la ao renomear a coluna, o MySQL eliminará essa restrição e permitirá valores nulos para essa coluna, após renomeá-la.
Bônus de leitura:procedimento armazenado do MySQL com parâmetros
Aqui está um exemplo de renomeação de coluna. Digamos que você tenha a seguinte tabela pedidos
mysql> describe orders; +--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | product_name | varchar(255) | NO | | NULL | | | order_date | date | YES | | NULL | | | price | int(11) | NO | | NULL | | | description | text | YES | | NULL | | | created_at | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+ mysql> alter table orders change price item_price int(11); mysql> describe orders; +--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | product_name | varchar(255) | NO | | NULL | | | order_date | date | YES | | NULL | | | item_price | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | created_at | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+
Bônus de leitura:Como duplicar a tabela no MySQL
Renomear coluna no MySQL 8.0
Desde o MySQL 8.0, existe outra maneira mais fácil de renomear a coluna sem alterar o tipo (sem especificar a definição da coluna inteira) usando a cláusula RENAME COLUMN.
ALTER TABLE products RENAME COLUMN product_name TO product_full_name;
O Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!