fix(schema): db.query → db.execute для DDL

DDL (CREATE TABLE) не возвращает строк — db.query() делал fetchall() и ломался.
db.execute() делает commit без fetch — правильно для DDL.
This commit is contained in:
2026-06-14 06:44:01 +04:00
parent 8db35e3b9d
commit 9d01dbae00
+3 -1
View File
@@ -113,9 +113,11 @@ def ensure_schema():
Создаёт все таблицы, если их ещё нет. Создаёт все таблицы, если их ещё нет.
Вызывается при старте приложения (app.py). Вызывается при старте приложения (app.py).
Безопасна для многократного вызова (IF NOT EXISTS). Безопасна для многократного вызова (IF NOT EXISTS).
Использует db.execute() — DDL не возвращает строк.
""" """
for name, ddl in ALL_DDL: for name, ddl in ALL_DDL:
result, err = db.query(ddl) rowcount, err = db.execute(ddl)
if err: if err:
print(f"[schema] ⚠️ {name}: {err}") print(f"[schema] ⚠️ {name}: {err}")
else: else: