



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
En este documento, aprenderás a renombrar tablas en MySQL utilizando la declaración RENAME TABLE y ALTER TABLE. Se incluyen ejemplos prácticos y precauciones a tener en cuenta.
Qué aprenderás
Tipo: Apuntes
1 / 7
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Resumen: en este tutorial, se aprenderá a renombrar tablas utilizando la declaración RENAME y la declaración ALTER TABLE
Debido a que los requerimientos de las empresas son cambiantes, en ocasiones es necesario renombrar una tabla vigente para ajustarse a las situaciones que se presenten. MySQL provee una declaración muy útil para cambiar el nombre de una o varias tablas. Para cambiar una o más tablas, se utiliza la declaración RENAME TABLE de la siguiente manera: 1 RENAME TABLE old_table_name TO new_table_name; La table “vieja o anterior” ( old_table_name) debe existir, y la nueva tabla ( new_table_name) no. Si la tabla nueva (nuevo nombre de tabla new_table_name ) no existe, la sentencia fallará. Además de las tablas, se puede usar la declaración RENAME TABLE para renombrar vistas (views). Antes de ejecutar la declaración RENAME TABLE, es necesario asegurarse de que no existan transacciones activas o tablas bloqueadas (locked tables ). Nótese que no se puede utilizar la declaración RENAME TABLE, para renombrar una tabla temporal (a temporary table), pero sí se puede utilizar la declaración (ALTER TABLE statement) para renombrar una tabla temporal. En términos de seguridad, cualquier privilegio existente de la vieja tabla (privileges that we granted to the old table) se debe de migrar a la nueva tabla.
Antes de renombrar una table, se debe de evaluar el impacto a fondo. Por ejemplo, se debe de investigar cuáles aplicaciones utilizan la tabla. Si el nombre de la tabla cambia, entonces el código de la aplicación que se refiere a la tabla, necesita ser modificado también. Adicionalmente, se deben de realizar manualmente ajustar los demás objetos de la base de datos tales como: views, stored procedures, triggers, foreign key constraints, etc., que hagan referencia a esa tabla. Lo anterior se discutirá con mayor detalle en los siguientes ejemplos. Ejemplos de la declaración RENAME TABLE MySQL Primero, creamos una nueva base de datos (create a new database ), llamada hr que consiste de dos tablas: : employees (empleados) y departments (departamentos) para la demostración. 1 CREATE DATABASE IF NOT EXISTS hr; 1 2 3 4 CREATE TABLE departments ( department_id INT AUTO_INCREMENT PRIMARY KEY, dept_name VARCHAR(100) );
department_id, dept_name FROM departments; 1 2 3 4
id, first_name, last_name, department_id FROM employees;
Renombrando una tabla referenciada por una vista Si la tbla que se va a renombrar está referenciada por una vista (view), la vista se invalidará si cambia el nombre de la tabla, y se tiene que ajustar la vista manualmente. Por ejemplos, se crea una vista llamada v_employee_info basada en las tablas employees y departments de la siguiente manera: 1 2 3 4 5 6 7 CREATE VIEW v_employee_info as SELECT id, first_name, last_name, dept_name from employees inner join departments USING (department_id); The views use the inner join clause to join departments and employees tables. The following SELECT statement returns all data from the v_employee_info view. Las vistas usan la cláusula inner join para unir las tablas departments y employees. La siguiente sentencia SELECT (SELECT statement) regresa todos los datos de la vista v_employee_info. 1 2 3 4
v_employee_info;
Se puede usar la sentencia CHECK TABLE para verificar el status de la vista v_employee_info de la siguiente manera: 1 CHECK TABLE v_employee_info; Se require cambiar manualmente la vista v_employee_info de tal manera que se refiera a la tabla people en lugar de la tabla employees.