Introducción
MySQL proporciona un entorno dinámico que le permite modificar los elementos de la base de datos con unos pocos comandos básicos. Al aprender a usar varias declaraciones, puede administrar sus bases de datos con facilidad.
Este tutorial contiene todos los comandos necesarios para cambiar el nombre de una columna en una base de datos MySQL.

Requisitos previos
- Una instancia funcional de MySQL
- Un usuario con privilegios ALTER en el servidor MySQL
Cambiar el nombre de la columna MySQL con el comando ALTER TABLE
ALTER TABLE
es un comando esencial utilizado para cambiar la estructura de una tabla MySQL. Puede usarlo para agregar o eliminar columnas, cambiar el tipo de datos dentro de las columnas e incluso cambiar el nombre de bases de datos completas. La función que más nos preocupa es cómo utilizar ALTER TABLE
para cambiar el nombre de una columna.
Las declaraciones nos dan un control adicional sobre el proceso de cambio de nombre. RENAME COLUMN
y CHANGE
Ambas declaraciones permiten modificar los nombres de las columnas existentes. La diferencia es que el CHANGE
La cláusula también se puede utilizar para modificar los tipos de datos de una columna.
Cambie el nombre de la columna MySQL con la declaración RENAME
La forma más sencilla de cambiar el nombre de una columna es utilizar ALTER TABLE
comando con RENAME COLUMN
cláusula. Esta cláusula está disponible desde la versión 8.0 de MySQL .
Ilustremos su sintaxis simple. Para cambiar el nombre de una columna, ingrese la siguiente declaración en su shell de MySQL:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
Reemplazar table_name
, old_column_name
y new_column_name
con sus nombres de tabla y columna. Tenga en cuenta que no puede cambiar el nombre de una columna a un nombre que ya existe en la tabla.
Por ejemplo, para cambiar la columna id en employee_id en la tabla empleados , ejecutaría:
ALTER TABLE employees RENAME COLUMN id TO employ_id;
RENAME COLUMN
La declaración solo se puede usar para cambiar el nombre de una columna. Si necesita funciones adicionales, como cambiar la definición de datos o la posición de una columna, use el CHANGE
cláusula en su lugar.
Cambie el nombre de la columna de MySQL con la instrucción CHANGE
El CHANGE
cláusula ofrece importantes adiciones al proceso de cambio de nombre. Se puede usar para cambiar el nombre de una columna y cambiar el tipo de datos de esa columna con el mismo comando.
Ingrese el siguiente comando en su shell de cliente MySQL para cambiar el nombre de la columna y su definición:
ALTER TABLE table_name CHANGE old_column_name new_col_name Data Type;
Puede cambiar el tipo de datos de la columna o mantener el existente. En ambos casos hay que especificar el tipo de dato ya que el elemento es obligatorio.
Por ejemplo, para cambiar la columna id en employee_id que tiene el tipo de datos VARCHAR(25) en la tabla empleados , ejecutarías:
ALTER TABLE employees CHANGE id employ_id VARCHAR(25);
Opciones adicionales
Puede usar opciones adicionales para manipular aún más las columnas de la tabla. El CHANGE
también le permite colocar la columna en una posición diferente en la tabla usando el FIRST | AFTER column_name
cláusula. Por ejemplo:
ALTER TABLE table_name CHANGE old_column_name new_col_name Data Type AFTER column_x;
Con el comando anterior, puede cambiar el nombre de la columna, cambiar el tipo de datos a y_data_type
y colocó la columna después de column_x
.
Renombrar varias columnas de MySQL
MySQL le permite cambiar el nombre de varias columnas con un solo comando. Esta opción es posible con RENAME
y el CHANGE
declaración.
Para cambiar los nombres de varias columnas mediante la cláusula RENAME COLUMN, utilice la sintaxis:
ALTER TABLE table_name
RENAME COLUMN old_column_name1 TO new_col_name1,
RENAME COLUMN old_column_name2 TO new_col_name2,
RENAME COLUMN old_column_name3 TO new_col_name3;
Para cambiar los nombres de varias columnas usando la cláusula CHANGE, use la sintaxis:
ALTER TABLE table_name
CHANGE old_column_name1 new_col_name1 Data Type,
CHANGE old_column_name2 new_col_name2 Data Type,
CHANGE old_column_name3 new_col_name3 Data Type;