# db/ — 数据库资产目录

## 当前状态（2026-04-05 更新）

完整 DDL 基线在 `docs/database/ddl/`（按 schema 分文件，从测试库自动导出）。
本目录保留运行时资产：迁移脚本、FDW 配置、建库脚本。

DDL 基线最近一次刷新：**2026-04-05**（合并了截至 2026-03-31 的全部迁移）。

## 目录结构

```
db/
├── etl_feiqiu/
│   ├── schemas/          — 已清空（DDL 基线见 docs/database/ddl/etl_feiqiu__*.sql）
│   ├── migrations/       — 11 个活跃迁移（2026-03-19 ~ 2026-03-31）
│   ├── seeds/            — 已清空（合并进对应 DDL 文件末尾）
│   └── scripts/
│       └── create_test_db.sql
├── zqyy_app/
│   ├── schemas/          — 已清空
│   ├── migrations/       — 8 个活跃迁移（2026-03-20 ~ 2026-03-31）+ _archived/
│   ├── seeds/            — 已清空
│   └── scripts/
│       └── create_test_db.sql
├── fdw/                  — FDW 跨库映射配置
│   ├── setup_fdw.sql              — 正向（zqyy_app → etl_feiqiu.app）
│   ├── setup_fdw_test.sql         — 正向（测试环境）
│   ├── setup_fdw_reverse.sql      — 反向（etl_feiqiu → zqyy_app.member_retention_clue）
│   └── setup_fdw_reverse_test.sql — 反向（测试环境）
└── _archived/            — 归档（2026-02-22 基线重置前的旧迁移，仅供历史参考）
    └── ddl_baseline_2026-02-22/
```

## DDL 基线

新建库或 schema diff 请使用 `docs/database/ddl/` 下的文件：

| 文件 | 数据库 | Schema | 对象数 |
|------|--------|--------|--------|
| `etl_feiqiu__meta.sql` | etl_feiqiu | meta | 3 表 |
| `etl_feiqiu__ods.sql` | etl_feiqiu | ods | 23 表 |
| `etl_feiqiu__dwd.sql` | etl_feiqiu | dwd | 42 表 |
| `etl_feiqiu__core.sql` | etl_feiqiu | core | 7 表 |
| `etl_feiqiu__dws.sql` | etl_feiqiu | dws | 38 表 |
| `etl_feiqiu__app.sql` | etl_feiqiu | app | 仅视图 |
| `zqyy_app__public.sql` | zqyy_app | public | 12 表 |
| `zqyy_app__auth.sql` | zqyy_app | auth | 9 表 |
| `zqyy_app__biz.sql` | zqyy_app | biz | 21 表 |
| `fdw.sql` | — | — | 正向 FDW 映射 |
| `fdw_reverse.sql` | — | — | 反向 FDW 映射 |

重新生成：`PYTHONUTF8=1 python tools/db/gen_consolidated_ddl.py`

## 迁移管理

项目 1.0 尚未上线，DDL 基线已统一到 `docs/database/ddl/`（含种子数据）。
后续新增迁移脚本放 `migrations/`，文件名格式 `YYYY-MM-DD__描述.sql`。
每次迁移执行后，重新运行 DDL 生成脚本刷新基线。
种子数据已合并进对应 DDL 文件末尾，不再单独维护 `seeds/` 目录。

## 文档分工

| 位置 | 管辖范围 |
|------|---------|
| `docs/database/` | 业务库(zqyy_app) BD_Manual + 跨模块(FDW/RLS) + DDL 基线 |
| `apps/etl/connectors/feiqiu/docs/database/` | ETL 专属(ODS/DWD/DWS 表级文档) |
| `db/`（本目录） | 运行时资产(迁移脚本/FDW 配置/建库脚本) |
| `tools/db/` | 数据库工具(DDL 生成/验证/一致性检查) |
