navicat 不支持物理模型逆向转为概念模型,因其模型体系为单向:仅支持数据库→逻辑模型或手动创建空概念模型,无自动抽象业务语义、合并表、识别弱实体等功能,所有概念建模必须人工完成。

Navicat 不支持将物理模型(即已生成的 .nmf 模型文件或数据库结构)逆向转为概念模型(如实体-关系抽象、业务语义分组、无字段细节的高层视图),这不是操作遗漏,而是功能根本不存在。
Navicat 没有「物理 → 概念」的逆向按钮或菜单项
Navicat 的模型体系是单向的:只能从数据库(物理层)→ 生成逻辑模型(.nmf),或从空白画布手动构建逻辑模型 → 导出为物理 DDL。它不提供任何“提取业务语义”“合并字段为属性”“识别弱实体”等概念建模能力。你右键模型、右键表、右键连接,所有菜单里都找不到类似 “Convert to Conceptual Model” 或 “Abstract to Business Layer” 的选项——不是灰色,是压根没有。
所谓“概念模型”在 Navicat 中仅指手动创建的空逻辑模型
Navicat 所谓的“概念模型”(Conceptual Model)只是新建模型时的一个模板类型选项,它生成的是一个空画布,不含任何表、字段或约束,需完全手工拖拽实体、连线、定义属性。它和物理模型之间没有解析桥梁:
- 无法自动把
t_user表抽象成 “User” 实体并隐藏create_time、update_time等技术字段 - 不能根据外键 + 命名规律(如
_id)推断“隶属关系”,更不会生成聚合/组合线 - 不支持将多个物理表(如
order_header+order_item)聚合成一个“Order”复合实体
想表达概念层,只能靠人工建模 + 约定规范
实际能落地的做法只有两种,且都绕不开人工干预:
- 新建一个「概念模型」,把原物理模型里的关键表重命名为业务术语(如
user_info→User),删掉非业务字段,用「Group」框圈出子系统,再手动添加注释说明语义规则 - 导出物理模型的
SQL,用外部工具(如sql2diagram或自定义脚本)按字段注释、表前缀、外键命名等启发式规则做轻量抽象,但结果仍需人工校验 - 若团队强依赖概念层交付,应切换到专用建模工具(如 PowerDesigner、ER/Studio),它们支持从物理模型提取概念视图(需配置映射规则)
最易被忽略的一点:Navicat 的「逻辑模型」本质仍是物理结构的图形化快照,它保留了字段类型、长度、NULL 性、索引等全部实现细节;所谓“逻辑”只是相对于“直接写 SQL”的便利,并非真正意义上的概念抽象。指望它自动升维,等于让 Excel 自动写出需求文档。











