You are currently viewing Как переименовать таблицу MySQL в Python?

Как переименовать таблицу MySQL в Python?

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()

Выход: