navicat er图无“默认隐藏非键字段”全局开关,因产品未实现该功能;字段显示遵循“展示即所存”,仅主键加粗、外键带锁图标,不触发自动隐藏。

Navicat 的 ER 图没有“默认隐藏非键字段”的全局开关,所有字段都默认显示;所谓“隐藏”,只能靠手动折叠或模型级筛选实现,且不随模型保存。
为什么找不到「隐藏非键字段」选项
Navicat(v15–v17)的 ER 图设计逻辑是「展示即所存」:它不区分“主键/外键/普通字段”语义层级,也不提供基于约束类型的自动过滤。所谓“键字段”,在 ER 图中仅表现为加粗(主键)或带锁图标(外键),但不会触发自动隐藏行为。
你搜索的这个功能,实际并不存在——不是设置没找到,而是产品本身没实现。
可行的替代方案:用「显示选项」临时收起普通字段
虽然不能按“是否为键”自动筛选,但你可以控制字段行的可见性:
- 进入 ER 图后,右键空白处 →「属性」(或按
F4)打开右侧属性窗格 - 取消勾选「显示表字段」→ 此时所有字段名、类型、注释全部消失,只剩表名框
- 若只想保留主键/外键视觉提示,可勾选「显示主键标识」和「显示外键标识」,但字段行仍需手动处理
- 注意:
显示表字段是开关式控制,无法按字段粒度启用/禁用
真正能“过滤字段”的地方只在建模导入阶段
如果你用的是「逆向数据库到模型」流程(推荐用于交付场景),可在导入时手动剔除不关心的字段:
- 右键数据库 →「逆向数据库到模型」→ 勾选目标表后,点击「下一步」
- 在「选择表字段」步骤中,**逐个展开每张表,取消勾选你不想出现在图里的普通字段**(如
created_at、updated_by) - 完成导入后,这些字段不会出现在模型实体中,导出 PDF/PNG 时自然不显示
- ⚠️ 该操作不可逆:删掉的字段不会被后续「刷新」恢复,必须重新逆向
容易被忽略的关键限制
即使你通过 SQL 导入或手动编辑模型删掉了非键字段,Navicat 仍可能在以下场景“意外还原”:
- 对模型执行「同步到数据库」时,它会按当前数据库结构重载全部字段,覆盖你手动删减的结果
- 右键表 →「刷新」会强制拉取
INFORMATION_SCHEMA.COLUMNS全量字段,无视你之前的手动精简 - 导出为 PNG 时若缩放比例低于 150%,字段容器会被压缩,部分字段名可能被截断——看起来像“隐藏”,实则是渲染失效











