domovoy_bot/database/migrate_add_topic_field.py
Admin ba4676b0af v1.0 MVP - Инициализация проекта 🏠
 Регистрация и верификация жильцов
 Рейтинг активности (уровни)
 Детект шпионов (Score 0-100)
 Анти-мат система (3 предупреждения → бан)
 Админ-панель с рассылкой
 Учёт квартир (несколько жильцов)
 Телефоны экстренных служб и мастеров
 Еженедельный экспорт JSON
 Прокси (socks5) для обхода РКН

Бекап: backups/versions/v1.0_mvp_2026-02-26/

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-27 10:54:16 +00:00

36 lines
1.1 KiB
Python
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
Миграция v1.8: добавить поле topic для классификации сообщений
"""
import sqlite3
import asyncio
DB_PATH = 'database/domovoy.db'
async def migrate():
"""Добавить поле topic в таблицу messages"""
conn = sqlite3.connect(DB_PATH)
cursor = conn.cursor()
# Проверяем есть ли поле topic в messages
cursor.execute("PRAGMA table_info(messages)")
columns = [col[1] for col in cursor.fetchall()]
if 'topic' not in columns:
print(" Добавляем поле topic...")
cursor.execute("ALTER TABLE messages ADD COLUMN topic TEXT")
print("✅ Поле topic добавлено")
else:
print(" Поле topic уже существует")
# Создаём индекс
cursor.execute("CREATE INDEX IF NOT EXISTS ix_messages_topic ON messages(topic)")
print("✅ Индекс ix_messages_topic создан")
conn.commit()
conn.close()
print("✅ Миграция v1.8 завершена!")
if __name__ == '__main__':
asyncio.run(migrate())