готовность к созданию API и базы контекста для ИИ.
This commit is contained in:
+15
-8
@@ -12,28 +12,35 @@ def migrate():
|
||||
conn = sqlite3.connect(DB_PATH)
|
||||
cursor = conn.cursor()
|
||||
|
||||
# Проверяем существующие колонки в таблице scud_logs
|
||||
cursor.execute("PRAGMA table_info(scud_logs);")
|
||||
columns = [row[1] for row in cursor.fetchall()]
|
||||
|
||||
# Добавляем столбец first_activity (Первая активность)
|
||||
if 'first_activity' not in columns:
|
||||
cursor.execute("ALTER TABLE scud_logs ADD COLUMN first_activity TEXT DEFAULT '—';")
|
||||
print("Добавлена колонка 'first_activity'")
|
||||
print("[✓] Добавлена колонка 'first_activity'")
|
||||
|
||||
# Добавляем столбец anomaly_flag (Флаг аномалии СКУД)
|
||||
if 'anomaly_flag' not in columns:
|
||||
cursor.execute("ALTER TABLE scud_logs ADD COLUMN anomaly_flag TEXT DEFAULT 'NONE';")
|
||||
print("Добавлена колонка 'anomaly_flag'")
|
||||
print("[✓] Добавлена колонка 'anomaly_flag'")
|
||||
|
||||
# Добавляем столбец snapshot_time (Время среза/выгрузки)
|
||||
if 'snapshot_time' not in columns:
|
||||
cursor.execute("ALTER TABLE scud_logs ADD COLUMN snapshot_time TEXT DEFAULT NULL;")
|
||||
print("Добавлена колонка 'snapshot_time'")
|
||||
print("[✓] Добавлена колонка 'snapshot_time'")
|
||||
|
||||
if 'snapshot_id' not in columns:
|
||||
cursor.execute("ALTER TABLE scud_logs ADD COLUMN snapshot_id TEXT DEFAULT NULL;")
|
||||
print("[✓] Добавлена колонка 'snapshot_id'")
|
||||
|
||||
# Проставляем номера для ранее сохраненных срезов
|
||||
cursor.execute("SELECT DISTINCT snapshot_time FROM scud_logs WHERE snapshot_time IS NOT NULL ORDER BY snapshot_time ASC")
|
||||
snaps = cursor.fetchall()
|
||||
for idx, (s_time,) in enumerate(snaps, 1):
|
||||
s_id = f"{idx:07d}"
|
||||
cursor.execute("UPDATE scud_logs SET snapshot_id = ? WHERE snapshot_time = ?", (s_id, s_time))
|
||||
|
||||
conn.commit()
|
||||
conn.close()
|
||||
print("Миграция схемы БД успешно завершена!")
|
||||
print("[✓] Миграция схемы БД успешно завершена!")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user