El módulo MySQL Connector-Python es una API en python que se utiliza para comunicarse con un servidor de base de datos MySQL. Solo requiere las bibliotecas estándar de Python y no tiene dependencias adicionales. Hay varios otros módulos en Python como PyMySQL y mysqlclient que se pueden usar para acceder a un servidor de base de datos. En este artículo, usaremos MySQL Connector-Python para ejecutar consultas de MySQL, particularmente para cambiar el nombre de una tabla, a través de Python.
Cambiar el nombre de una tabla en SQL
Las instrucciones ALTER y RENAME se utilizan para cambiar el nombre de una tabla. Al cambiar el nombre de una tabla, se deben tener en cuenta los otros objetos de la base de datos, como vistas, procedimientos almacenados, activadores, etc., a los que se puede hacer referencia en la tabla y ajustarlos manualmente.
Sintaxis de la sentencia RENAME:
RENAME TABLE table_name to new_table_name
Aquí, table_name es la tabla existente que necesita ser renombrada y new_table_name es el nuevo nombre que se le dará a la tabla existente. Además, este nuevo nombre no debe ser un duplicado de ninguna otra tabla existente.
Sintaxis de la sentencia ALTER:
ALTER TABLE table_name RENAME to new_table_name
Esta declaración es similar a la declaración RENAME. Sin embargo, a diferencia de RENAME, también puede cambiar el nombre de las tablas temporales.
Implementación:
Primero, establezca una conexión con el servidor de la base de datos y cree un objeto de cursor con las funciones connect() y cursor() del módulo MySQL Connector-Python en Python. Luego use las declaraciones RENAME o ALTER para cambiar el nombre de una tabla. A continuación se muestran algunos ejemplos para una mejor comprensión.
Base de datos en uso:
Usaremos un almacén de base de datos de muestra con una tabla de productos , una tabla de compradores y una tabla de personal para los ejemplos.
Ejemplo 1: Renombrar usando la instrucción ALTER
- Paso 1: Establezca la conexión a la base de datos de la tienda usando la función connect() .
- Paso 2: Cree un objeto de cursor para interactuar con la base de datos utilizando la función cursor().
- Paso 3: use la declaración ALTER para cambiar el nombre de la tabla de personal como empleados.
- Paso 4: Para comprobar si se ha cambiado el nombre de la tabla, ejecute el comando MOSTRAR TABLAS. Esto muestra los nombres de todas las tablas en la base de datos.
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host="localhost", user="username", password="geeksforgeeks", database="store" ) # Create a cursor object mycursor = mydb.cursor() # MySQL query for for renaming a table query = "ALTER TABLE staff RENAME to employees" # Execute the query mycursor.execute(query) # Print names of all tables in the database mycursor.execute("SHOW TABLES") myresult = mycursor.fetchall() for row in myresult: print(row) # Close database connection mydb.close()
Producción:
Ejemplo 2: Renombrar usando la instrucción RENAME
Siga los mismos pasos que en el ejemplo anterior para establecer una conexión con el servidor de la base de datos y crear un objeto de cursor. Luego ejecute la consulta SQL con la instrucción RENAME. Este comando permite cambiar el nombre de varias tablas a la vez. Este ejemplo cambia el nombre de la tabla de productos a inventario y la tabla de compradores a clientes .
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host="localhost", user="username", password="geeksforgeeks", database="store" ) # Create a cursor object mycursor = mydb.cursor() # MySQL query for renaming a table query = "RENAME TABLE products to inventory,\ buyers to customers" # Execute the query mycursor.execute(query) # Print names of all tables in the database mycursor.execute("show tables") myresult = mycursor.fetchall() for row in myresult: print(row) # Close database connection mydb.close()
Producción:
Publicación traducida automáticamente
Artículo escrito por akshisaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA