import os import sys # Добавляем путь к корневой директории проекта sys.path.append(os.path.dirname(os.path.dirname(__file__))) from database.db import BotDB # Получаем текущую директорию current_dir = os.path.dirname(__file__) # Переходим на уровень выше parent_dir = os.path.dirname(current_dir) BotDB = BotDB(parent_dir, 'tg-bot-database.db') def get_filename(): """Возвращает имя файла без расширения.""" filename = os.path.basename(__file__) filename = os.path.splitext(filename)[0] return filename def main(): # Проверка версии миграций current_version = BotDB.get_current_version() # Добавьте функцию для получения версии # Выполнение миграций и проверка последней версии if current_version < 1: # Скрипты миграции create_table_sql_1 = """ CREATE TABLE IF NOT EXISTS "admins" ( user_id INTEGER NOT NULL, "role" TEXT ); """ create_table_sql_2 = """CREATE TABLE IF NOT EXISTS "blacklist" ( "user_id" INTEGER NOT NULL UNIQUE, "user_name" INTEGER, "message_for_user" INTEGER, "date_to_unban" INTEGER ); """ create_table_sql_3 = """ CREATE TABLE IF NOT EXISTS user_messages ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, message_text TEXT, user_id INTEGER, message_id INTEGER NOT NULL, date TEXT ); """ # Применение миграции BotDB.create_table(create_table_sql_1) BotDB.create_table(create_table_sql_2) BotDB.create_table(create_table_sql_3) BotDB.add_admin(842766148, 'creator') BotDB.add_admin(920057022, 'admin') filename = get_filename() BotDB.update_version(1, filename) if __name__ == "__main__": main()