logo

Tabla de cambio de nombre de MySQL

A veces, el nombre de nuestra tabla no tiene significado, por lo que es necesario cambiar el nombre o cambiar el nombre de la tabla. MySQL proporciona una sintaxis útil que puede cambiar el nombre de una o más tablas en la base de datos actual.

Sintaxis

La siguiente es la sintaxis utilizada para cambiar el nombre de la tabla:

 mysql> RENAME old_table TO new_table; 

Aquí tenemos que asegurarnos de que nuevo_nombre_tabla no debe existir, y nombre_tabla_antiguo debe estar presente en la base de datos. De lo contrario, arrojará un mensaje de error. Es para garantizar que la tabla no esté bloqueada y que no haya transacciones activas antes de ejecutar esta declaración.

NOTA: Si utilizamos la instrucción RENAME TABLE, es necesario tener privilegios ALTER y DROP TABLE para la tabla existente. Además, esta declaración no puede cambiar el nombre de una tabla temporal.

También podemos usar MySQL. RENOMBRAR TABLA declaración para cambiar más de un nombre de tabla con una sola declaración, como se muestra a continuación:

 RENAME TABLE old_tab1 TO new_tab1, old_tab2 TO new_tab2, old_tab3 TO new_tab3; 

Desde el MySQL 8.0.13 En esta versión, podemos cambiar el nombre de la tabla anterior bloqueada con una declaración LOCK y también usamos la cláusula WRITE LOCK. Por ejemplo, las siguientes son las declaraciones válidas:

 mysql> LOCK TABLE old_tab_name1 WRITE; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2; 

No se permiten las siguientes declaraciones:

 mysql> LOCK TABLE old_tab_name1 READ; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2; 

Antes de la versión MySQL 8.0.13, no podíamos cambiar el nombre de la tabla que estaba bloqueada con la instrucción LOCK TABLE.

MySQL también usa la instrucción RENAME TABLE para mover una tabla de una base de datos a otra, que se muestra a continuación:

 mysql> RENAME TABLE current_db.tablel_name TO other_db.tablel_name; 

Ejemplo de RENOMBRAR TABLA de MySQL

Entendamos cómo funciona la declaración RENAME TABLE en MySQL a través de varios ejemplos. Supongamos que tenemos una tabla llamada EMPLEADO , y por alguna razón, es necesario cambiarlo a la tabla denominada CLIENTE .

Nombre de la tabla: empleado

Tabla de cambio de nombre de MySQL

A continuación, ejecute la siguiente sintaxis para cambiar el nombre de la tabla:

 mysql> RENAME employee TO customer; 

Producción

glotón contra tejón

Veremos que la tabla denominada 'empleado' se cambiará a una nueva tabla con el nombre 'cliente':

Tabla de cambio de nombre de MySQL

En el resultado anterior, podemos ver que si usamos el nombre de la tabla empleado después de ejecutar una instrucción RENAME TABLE, arrojará un mensaje de error.

Cómo RENOMBRAR varias tablas

La declaración RENAME TABLE en MySQL también nos permite cambiar más de un nombre de tabla dentro de una sola declaración. Vea la siguiente declaración:

Supongamos que nuestra base de datos ' miempleadob ' teniendo las siguientes tablas:

Tabla de cambio de nombre de MySQL

Si queremos cambiar el nombre de la mesa cliente a empleado y el nombre de la mesa camisas a prendas, ejecute la siguiente declaración:

 mysql> RENAME TABLE customer TO employee, shirts TO garments; 

Producción

Podemos ver que el nombre de la tabla cliente a empleado y el nombre de la tabla camisas a prendas se han cambiado correctamente.

Tabla de cambio de nombre de MySQL

Cambiar el nombre de la tabla usando la declaración ALTER

La instrucción ALTER TABLE también se puede utilizar para cambiar el nombre de la tabla existente en la base de datos actual. La siguiente es la sintaxis de la declaración ALTER TABLE:

 ALTER TABLE old_table_name RENAME TO new_table_name; 

Consulte la siguiente consulta que cambia las prendas con el nombre de la tabla existente por camisas con el nombre de la tabla nueva:

java obteniendo la fecha actual
 mysql> ALTER TABLE garments RENAME TO shirts: 

Producción

Aquí, podemos ver que las prendas con el nombre de la mesa cambiaron de nombre a camisas con el nombre de la mesa.

Tabla de cambio de nombre de MySQL

Cómo RENOMBRAR una tabla temporal

Una tabla temporal nos permite mantener datos temporales, que son visibles y accesibles solo en la sesión actual. Entonces, primero, necesitamos crear una tabla temporal usando la siguiente declaración:

 mysql> CREATE TEMPORARY TABLE Students( name VARCHAR(40) NOT NULL, total_marks DECIMAL(12,2) NOT NULL DEFAULT 0.00, total_subjects INT UNSIGNED NOT NULL DEFAULT 0); 

A continuación, inserte valores en esta tabla:

 mysql> INSERT INTO Students(name, total_marks, total_subjects) VALUES ('Joseph', 150.75, 2), ('Peter', 180.75, 2); 

A continuación, ejecute el comando show table para verificar la tabla temporal:

 mysql> SELECT * FROM Students; 

Ahora, ejecute el siguiente comando para cambiar el nombre de la tabla temporal:

 mysql> RENAME TABLE Students TO student_info; 

Lanzará un mensaje de error, como se muestra a continuación:

Tabla de cambio de nombre de MySQL

Por lo tanto, MySQL permite que la instrucción ALTER table cambie el nombre de la tabla temporal:

 mysql> ALTER TABLE Students RENAME TO student_info; 

Producción

Tabla de cambio de nombre de MySQL