Files
zkxw/openspec/changes/zkxw-engineering-standards/specs/database-conventions/spec.md
T
zlwu b220298f89 chore: 清理历史资料并规范工程目录与开发规则
为减少仓库噪声和重复规则,整理当前开发入口并移除已废弃资料。

- 精简根 AGENTS,补充四个应用规则与 README,统一规范入口
- 归整部署文件、SOP 原稿和参考资源,修正迁移后的脚本路径
- 取消虚拟环境、工具状态、业务导出及备份的跟踪,本机所需原件保留
- 移除停用的 graphify 配置、脚本与产物
- 删除历史业务文档、执行计划、OpenSpec 业务变更和移动 UI 原型
- 清理失效引用,历史细胞产品导入改为必须显式指定 --file

验证:git diff --cached --check、OpenSpec 严格校验、导入参数隔离检查 3/3 通过;
迁移文件完整性和现行链接已核对。未执行部署、业务数据导入或服务启停。
2026-10-29 23:08:29 +08:00

2.1 KiB
Raw Blame History

ADDED Requirements

来源说明:文中《中科兴皖需求 V0.3》及其章节引用为历史出处,原文已清理;以下既有 SHALL 要求继续有效,当前入口见根 AGENTS.md 与本工程标准。

Requirement: MySQL 版本

生产与标准开发环境的关系型数据库 SHALL 使用 MySQL 5.7(与《中科兴皖需求 V0.3》§3 一致)。

Scenario: 新环境搭建文档

  • WHEN 编写或更新部署文档
  • THEN 文档 SHALL 声明 MySQL 5.7 及字符集/排序规则(如 utf8mb4)基线

Requirement: 公共字段集合

除需求或 OpenSpec 明确豁免的关联/日志表外,业务表 SHALL 包含以下公共字段且语义一致:id(VARCHAR(64),UUID)、tenant_no、order_num、remark、create_by、create_dept_id、create_time、update_by、update_time、del_flag(与需求 §3 列表一致)。

Scenario: 新建业务表 DDL

  • WHEN 创建新表
  • THEN 表定义 SHALL 包含上述公共字段,且 del_flag 默认 0 表示未删除

Requirement: 字段顺序

表模型定义与 DDL 中,业务字段 SHALL 位于 id 之后;tenant_no、order_num、remark、create_by、create_dept_id、create_time、update_by、update_time、del_flag SHALL 位于业务字段之后(与需求 §3 一致)。

Scenario: Code review DDL

  • WHEN 审查新建表 SQLAlchemy 模型或 raw SQL
  • THEN 字段顺序 SHALL 符合本 requirement,除非评审记录中注明例外原因

Requirement: 逻辑删除

应用层 SHALL NOT 对业务数据执行物理删除;删除操作 SHALL 通过将 del_flag 置为 1 实现;查询默认 SHALL 排除已删除行。

Scenario: 删除用户可见记录

  • WHEN 用户点击删除某条业务数据
  • THEN 服务端 SHALL 更新 del_flag 而非 DELETE FROM,且列表接口默认不返回 del_flag=1

Requirement: 主键类型

主键 id SHALL 为 VARCHAR(64) NOT NULL,取值策略为 UUID(与需求 §3)。

Scenario: 插入新行

  • WHEN 应用创建新实体
  • THEN 写入的 id SHALL 为符合长度与格式的 UUID 字符串