"""初始化数据库:根据 app/models.py 中的模型自动创建全部表。 用法(在 backend 目录,已激活 .venv): python init_db.py 说明: - 会连接 app/config.py 中当前环境(默认 development)配置的数据库。 - MySQL 需先手动建库:CREATE DATABASE incid_db ...(见 schema.sql 第一行)。 - 若使用 SQLite(见 README/说明),无需提前建库,运行本脚本即可生成表。 """ from app import create_app, db import app.models # noqa: F401 确保所有模型注册到 metadata app = create_app() with app.app_context(): db.create_all() tables = sorted(db.metadata.tables.keys()) print("数据库初始化完成,已创建/校验以下表:") for name in tables: print(" -", name)