Navicat ER图不支持隐藏字段,因其本质是结构拓扑图,字段列表服务于关系推导与约束校验,隐藏会破坏建模一致性;唯一可控方式是在逆向工程或手动建模时源头裁剪字段。
Navicat ER图里根本没有“隐藏字段”功能
直接说结论:navicat 的 er 图(.nvm 文件)界面不提供任何右键 → “隐藏列”或类似操作。你看到的字段列表,是逆向工程读取数据库 information_schema 或 pg_catalog 后生成的完整元数据快照,无法在图中动态折叠、隐藏某几个字段。
所谓“右键隐藏列”,其实是把「数据表查看界面」的操作误套用到了 ER 图上——两者完全不是同一个视图层,底层渲染逻辑和交互能力完全不同。
想让ER图更简洁,只能靠建模阶段主动筛选
真正可控的方式,是在逆向工程或手动建模时,就只加载需要的字段。这不是后期隐藏,而是源头裁剪:
- 逆向工程时,在弹窗中取消勾选「包含所有字段」,改用手动勾选核心字段(如主键、外键、业务关键列)
- 对已生成的表,双击打开实体 → 切到 Fields 标签页 → 选中不需要的字段 → 按
Delete键彻底移除(注意:这仅影响当前 ER 图,不改动数据库) - 若字段被多个关系引用(如外键列),删除前会提示依赖关系,需先解除连线或调整引用逻辑
导出图片或PDF时字段仍太多?那是画布没精简
即使删掉了字段,导出后仍显拥挤,往往是因为表实体本身没重排。ER 图的视觉密度取决于布局,而非字段数量:
- 执行
Layout → Auto Layout后,立刻手动拖动表之间留出足够空白(建议横向间距 ≥ 表宽 × 1.2) - 导出前务必调小画布:
Layout → Canvas Size → Custom,设为略大于目标页面(如 A4 横向:2480×1754 px @ 300dpi) - 导出格式必须选
PDF,PNG 会固化像素,放大即模糊;且 PDF 导出设置里要勾选「Antialiasing(抗锯齿)」和「Include field types」
为什么不能像数据表那样右键隐藏字段?
因为 ER 图本质是结构拓扑图,不是数据浏览界面。它的字段列表服务于关系推导(比如外键匹配、索引识别),一旦隐藏,Navicat 就无法自动建立连线或校验约束完整性。这也是它不开放该功能的根本原因——不是忘了做,是做了反而破坏建模一致性。
最容易被忽略的一点:你在 ER 图里删掉的字段,不会同步回数据库;但如果你用 Tools → Forward Engineer 生成 DDL,这些被删字段也不会出现在 SQL 里。所以删字段=明确放弃该列在模型中的语义角色,动作不可逆,操作前最好确认好协作上下文。











