docs-03-header-template.md
2.3 KB
03-数据库设计文档
-
Schema:
{{schema_name}} -
Migration 清单:
sql/migrations/V*.sql(由 Flyway 顺序 apply) -
生成方式: 由 A3
db-design-gen基于docs/01-需求清单/<module>/下各 REQ 卡片(文件名 == req_id)正向设计生成(schema SSoT)。
项目标准列约定
下文每张业务表的字段清单都自动包含以下 7 个标准列(匈牙利前缀 i int / s varchar / t datetime);从表(本文档「表清单」里除第一张主表之外的所有表)额外再加 1 个标准列 sParentId,共 8 个标准列。渲染时由 docs-03-table-template.md 模板内置原样输出。
主表 = 「表清单」中的第一张表;从表 = 其余各表。
| 列名 | 类型 | 可空 | 主键 | 默认 | 说明 |
|---|---|---|---|---|---|
iIncrement |
int | 否 | 是 | — | 整数主键 ID(标准列);DDL 译为 PRIMARY KEY + AUTO_INCREMENT
|
sId |
varchar(50) | 否 | — | — | 业务 ID(标准列,对外暴露的字符串标识,如 UUID / 人类可读编号) |
sBrandsId |
varchar(50) | 否 | — | 1111111111 |
品牌 ID(多租户隔离,标准列);DDL 译为 DEFAULT '1111111111'
|
sSubsidiaryId |
varchar(50) | 否 | — | 1111111111 |
子公司 ID(组织层级隔离,标准列);DDL 译为 DEFAULT '1111111111'
|
tCreateDate |
datetime | 否 | — | 当前时间 | 记录创建时间(标准列);DDL 译为 DEFAULT CURRENT_TIMESTAMP
|
iOrder |
int | 否 | — | 数据行条数+1 | 排序号;非 SQL 默认——应用在 insert 时按 count+1 赋值,DDL 仅写 int NOT NULL(不写 DEFAULT 表达式,在该列 COMMENT / 表业务注记里注明 app-assigned) |
sMemo |
LONGTEXT | 是 | — | — | 备注(标准列) |
从表专属标准列(从「表清单」第二张表起,即除第一张主表外的所有表都加,插入位置紧随 sId 之后):
| 列名 | 类型 | 可空 | 主键 | 默认 | 说明 |
|---|---|---|---|---|---|
sParentId |
varchar(50) | 否 | — | — | 业务父级 ID(标准列);仅从表有,紧随 sId 之后 |
字典 / 辅助表如有豁免,在该表业务注记里注明豁免原因。
ER 关系概览
{{er_overview}}
表清单
{{#each tables}}
-
{{table_name}}— {{purpose}} {{/each}}