MySQL Connector-модуль Python-это API в python, используемый для связи с сервером баз данных MySQL. Он требует только стандартных библиотек Python и не имеет дополнительных зависимостей. В Python есть различные другие модули, такие как PyMySQL и mysqlclient, которые могут использоваться для доступа к серверу баз данных. В этой статье мы будем использовать MySQL Connector-Python для выполнения запросов MySQL, в частности переименования таблицы, с помощью Python.
Переименование таблицы в SQL
Инструкции ALTER и RENAME используются для переименования таблицы. При переименовании таблицы необходимо иметь в виду другие объекты базы данных, такие как представления, хранимые процедуры, триггеры и т.д., Которые могут быть связаны с таблицей, и настраивать их вручную.
Синтаксис инструкции ПЕРЕИМЕНОВАНИЯ:
RENAME TABLE table_name to new_table_name
Здесь table_name — это существующая таблица, которую необходимо переименовать, а new_table_name — это новое имя, которое должно быть присвоено существующей таблице. Кроме того, это новое имя не должно дублировать какие-либо другие существующие таблицы.
Синтаксис инструкции ALTER:
ALTER TABLE table_name
RENAME to new_table_name
Это утверждение похоже на инструкцию RENAME. Однако, в отличие от ПЕРЕИМЕНОВАНИЯ, он также может переименовывать временные таблицы.
Реализация:
Сначала установите соединение с сервером базы данных и создайте объект курсора с функциями connect() и cursor() модуля MySQL Connector-Python в Python. Затем используйте инструкции RENAME или ALTER, чтобы изменить имя таблицы. Ниже приведены некоторые примеры для лучшего понимания.
Используемая база данных:
Для примеров мы будем использовать образец хранилища баз данных с таблицей продуктов, таблицей покупателей и таблицей персонала.
Пример 1. Переименование с помощью инструкции ALTER
- Шаг 1: Установите соединение с базой данных хранилища с помощью функции connect ().
- Шаг 2. Создайте объект курсора для взаимодействия с базой данных с помощью функции курсора ().
- Шаг 3. Используйте инструкцию ALTER, чтобы переименовать штатную таблицу в «Сотрудники».
- Шаг 4: Чтобы проверить, переименована ли таблица, выполните команду «ПОКАЗАТЬ ТАБЛИЦЫ». При этом отображаются имена всех таблиц в базе данных.
- 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()
Выход:
Пример 2.
Переименование с помощью инструкции RENAME
Выполните те же действия, что и в приведенном выше примере, для установления соединения с сервером базы данных и создания объекта курсора. Затем выполните SQL — запрос с помощью инструкции RENAME. Эта команда позволяет переименовывать несколько таблиц одновременно. В этом примере таблица «Продукты» переименована в «Запасы«, а таблица «покупатели» — в «клиенты«.
- 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()