# Отчёт об исправлении ошибки базы данных ## Проблема ``` sqlalchemy.exc.ProgrammingError: column participations.account_id does not exist ``` ## Причина Миграция 003 не была применена корректно - столбец `account_id` не был добавлен в таблицу `participations`, хотя модель SQLAlchemy ожидала его наличие. ## Диагностика 1. **Проверка миграций**: `alembic current` показал версию 005 (head) 2. **Проверка структуры таблицы**: В таблице `participations` отсутствовал столбец `account_id` 3. **Проверка внешних ключей**: Отсутствовал FK constraint на `accounts.id` ## Исправление Применено вручную: ```sql -- Добавление столбца ALTER TABLE participations ADD COLUMN account_id INTEGER; -- Добавление внешнего ключа ALTER TABLE participations ADD CONSTRAINT fk_participations_account_id FOREIGN KEY (account_id) REFERENCES accounts(id) ON DELETE SET NULL; ``` ## Результат - ✅ Столбец `account_id` добавлен - ✅ Внешний ключ настроен - ✅ Бот запустился без ошибок - ✅ Создание розыгрышей должно работать корректно ## Дата исправления 16 ноября 2025 г. 20:54 ## Рекомендации - При развертывании на других серверах убедиться, что все миграции применены корректно - Рассмотреть возможность добавления проверки целостности схемы БД при запуске