2.0 KiB
2.0 KiB
数据库与枚举总览
1. 文档目的
本文集中说明本轮数据库和枚举脚本的更新范围,避免需求文档、设计文档、前端文档、后端文档与 SQL 脚本出现冲突。
2. SQL 脚本分层
| 脚本位置 | 作用 |
|---|---|
script/ |
可执行的模块化建表或初始化脚本 |
docs/MODEL_PROVIDER_SCHEMA.sql |
模型平台 schema 汇总 |
docs/STUDIO_PROTOTYPE_SCHEMA.sql |
Studio 原型 schema 汇总 |
模块化脚本是后续落库执行的优先参考,docs/*SCHEMA.sql 是完整设计快照。
3. 必须保持不变的内容
script/sql/1.enum.sql 中 sys_enum 表结构不变:
catalogtypenamevaluestrvaluesortversioncreate_timeupdate_timeremarkcreate_byupdate_by
Java 枚举契约 PersistableSysEnumDefinition 的格式不变。后续如果实现新枚举类,仍按现有 getCatalog()、getType()、getValue()、getLabel()、getRemark() 风格实现。
4. 本轮新增脚本
| 脚本 | 内容 |
|---|---|
script/sql/11.studio_project.sql |
Studio 项目空间表 |
script/sql/12.workflow.sql |
Workflow 定义、版本、运行、步骤日志 |
script/sql/14.mcp.sql |
MCP Server 与能力表 |
script/sql/15.skill.sql |
Skill 定义与版本表 |
script/sql/13.agent_session.sql |
Agent 会话与消息表 |
script/sql/16.agent_capability_binding.sql |
Agent/Workflow 与 MCP/Skill/知识能力绑定表 |
script/sql/18.studio_enum.sql |
Studio 相关枚举初始化 |
5. 校验规则
- 所有新增表必须包含
id、version、create_time、update_time、remark、create_by、update_by。 - 需要唯一业务编码的表必须增加唯一约束。
- 需要跨模块引用的字段必须在文档中说明外键关系。
- JSON 扩展字段统一使用
JSONB。 - 枚举初始化脚本必须使用
ON CONFLICT (catalog, type, name) DO UPDATE,与现有脚本风格一致。