Files
insightflow/backend/init_db.py
OpenClaw Bot be22b763fa fix: auto-fix code issues (cron)
- 修复重复导入/字段
- 修复异常处理
- 修复PEP8格式问题
- 添加类型注解
- 修复重复函数定义 (health_check, create_webhook_endpoint, etc)
- 修复未定义名称 (SearchOperator, TenantTier, Query, Body, logger)
- 修复 workflow_manager.py 的类定义重复问题
- 添加缺失的导入
2026-02-27 09:18:58 +08:00

46 lines
1.1 KiB
Python

#!/usr/bin/env python3
"""Initialize database with schema"""
import sqlite3
import os
db_path = os.path.join(os.path.dirname(__file__), "insightflow.db")
schema_path = os.path.join(os.path.dirname(__file__), "schema.sql")
print(f"Database path: {db_path}")
print(f"Schema path: {schema_path}")
# Read schema
with open(schema_path, "r") as f:
schema = f.read()
# Execute schema
conn = sqlite3.connect(db_path)
cursor = conn.cursor()
# Split schema by semicolons and execute each statement
statements = schema.split(";")
success_count = 0
error_count = 0
for stmt in statements:
stmt = stmt.strip()
if stmt:
try:
cursor.execute(stmt)
success_count += 1
except sqlite3.Error as e:
# Ignore "already exists" errors
if "already exists" in str(e):
success_count += 1
else:
print(f"Error: {e}")
error_count += 1
conn.commit()
conn.close()
print(f"\nSchema execution complete:")
print(f" Successful statements: {success_count}")
print(f" Errors: {error_count}")