46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
import os
|
|
import mysql.connector
|
|
from dotenv import load_dotenv
|
|
|
|
# Загрузка переменных окружения из .env файла
|
|
load_dotenv()
|
|
|
|
# Конфигурация базы данных из переменных окружения
|
|
DB_CONFIG = {
|
|
'host': os.getenv('MDB_HOST'),
|
|
'user': os.getenv('MDB_USER'),
|
|
'password': os.getenv('MDB_PW'),
|
|
'database': os.getenv('MDBASE')
|
|
}
|
|
|
|
def alter_column_type():
|
|
try:
|
|
# Устанавливаем соединение с базой данных
|
|
connection = mysql.connector.connect(**DB_CONFIG)
|
|
cursor = connection.cursor()
|
|
|
|
# Выполняем ALTER TABLE запрос
|
|
alter_query = """
|
|
ALTER TABLE events
|
|
MODIFY COLUMN about TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
|
|
"""
|
|
cursor.execute(alter_query)
|
|
|
|
# Подтверждаем изменения
|
|
connection.commit()
|
|
|
|
print("Тип поля 'about' успешно изменен на TEXT")
|
|
|
|
except mysql.connector.Error as error:
|
|
print(f"Ошибка при изменении типа поля: {error}")
|
|
if connection:
|
|
connection.rollback()
|
|
finally:
|
|
if cursor:
|
|
cursor.close()
|
|
if connection:
|
|
connection.close()
|
|
|
|
if __name__ == "__main__":
|
|
alter_column_type()
|