库表结构设计模板(DATABASE_SCHEMA.md)¶
将下列内容填实后写入**功能规格说明书同目录**下的 DATABASE_SCHEMA.md(或用户指定路径)。花括号为占位符;无内容的节写「无」,勿删节标题。
{软件/项目显示名} — 数据库表结构设计¶
- 需求来源:{文档名或路径}
- 关联规划:{PLAN.md 路径 / 无}
- 目标库:{MySQL / Oracle / …}(若已知)
- 版本 / 日期:
- 作者:
1. 概述¶
- 业务目标:(1 段)
- 设计范围:
- 不做事项:
- 约定摘要:
- 事务表:
TLK_+ 表单名;业务列ITEM_+ 字段名大写;由动态表单创建 - 主数据表 / 统计表:手工 SQL 创建;不用
TLK_前缀;主数据(及需界面维护的手工表)下游用映射表单 type=65536
2. 表清单¶
| 序号 | 逻辑名 | 物理表名 | 类型 | 用途 | 创建方式 |
|---|---|---|---|---|---|
| 1 | TLK_… / MD_… / SUM_… | 事务表 / 主数据表 / 统计表 | 动态表单 / SQL |
类型取值仅限:事务表(Transaction Table)、主数据表(Master Table)、统计表(Summary Table)。
3. 表结构明细¶
对清单中每张表复制一节(将 {n} 换成序号)。
3.{n} {逻辑名}({物理表名})¶
| 属性 | 内容 |
|---|---|
| 类型 | 事务表 / 主数据表 / 统计表 |
| 用途 | |
| 创建方式 | 动态表单(表单 name=…) / 手工 SQL |
| 主键 | |
| 备注 | 事务表可写「含平台固定列,见本节平台固定列」 |
字段¶
| 逻辑名 | 物理列名 | 类型 | 长度/精度 | 约束 | 用途 |
|---|---|---|---|---|---|
| ITEM_… 或 ID 等 | VARCHAR / DECIMAL / DATETIME / TEXT / … | 如 100;22,10 | PK / FK→表.列 / UK / NOT NULL / 默认值 |
事务表补充列(建议):
| 表单字段 name | 物理列 ITEM_* | 建议 fieldtype |
|---|---|---|
| VALUE_TYPE_VARCHAR / NUMBER / DATE / TEXT |
附件字段:物理列为 TEXT,建议 fieldtype=VALUE_TYPE_TEXT;列值存 JSON(含存储路径、名称等信息),勿用 BLOB。
平台固定列(仅事务表需要时)¶
本表为动态表,另含平台固定列(如
ID、PARENT、CREATED、AUTHOR、DOMAINID、ISTMP等),由引擎维护,业务设计不改其语义。明细见产品design/database-struct动态表节。
统计来源(仅统计表)¶
| 项 | 内容 |
|---|---|
| 源表 | |
| 粒度 | 如:域 + 年-月 + 部门 |
| 维度字段 | |
| 度量字段与算法 | 如:COUNT / SUM(ITEM_AMOUNT) |
| 刷新方式 | 定时任务 / 脚本 / 手工 / ETL |
4. 关联关系¶
| 关联名 | 端 A(表.列) | 端 B(表.列) | 基数 | 关联性质 | 说明 |
|---|---|---|---|---|---|
| TLK_ORDER.ID | TLK_ORDERITEM.PARENT | 1:N | 逻辑 / 物理 FK | 主子表 | |
| TLK_ORDER.ITEM_CUSTID | MD_CUSTOMER.ID | N:1 | 逻辑 | 流水引用主数据 |
可用 mermaid 补充(可选):
erDiagram
MD_CUSTOMER ||--o{ TLK_ORDER : "ITEM_CUSTID"
TLK_ORDER ||--o{ TLK_ORDERITEM : "PARENT"
TLK_ORDERITEM ||--o| SUM_ORDER_MONTH : "aggregates"
5. 建议 DDL(主数据表 / 统计表)¶
事务表不在此写完整建表语句。仅对手工表给出可执行 DDL(按目标库方言)。示例:
-- MD_CUSTOMER
CREATE TABLE MD_CUSTOMER (
ID VARCHAR(100) NOT NULL PRIMARY KEY,
CODE VARCHAR(50) NOT NULL,
NAME VARCHAR(200) NOT NULL,
DOMAINID VARCHAR(100) NULL,
CREATED DATETIME NULL
);
6. 开放问题¶
- …
7. 自检记录¶
A. 与需求一致¶
- 需求核心对象均有表或明确合并/不做说明
- 指标/报表可追溯到事务或统计+规则
- 无臆造关键实体;开放问题已列
- 表类型与三类定义一致
B. 自身逻辑合理¶
- 命名无冲突;跨表同义字段一致
- 主键与关联类型/长度兼容
- 事务表业务列为 ITEM_*;主路径非手工建 TLK_
- 主数据/统计未使用 TLK_ 前缀
- 统计度量/维度可追溯
- 关系基数与中间方案完整
- 多租户字段一致(若需要)
- 状态/枚举与需求一致(若有)
C. 文档完整¶
- 每表:名称、类型、用途
- 每字段:名称、类型、长度、约束、用途
- 关联已写清
- 自检结论已填
结论:通过 / 有条件通过(条件:…) / 不通过
检查人 / 日期: