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}}