Navicat 17 ER图默认不显示字段类型,需手动开启「显示字段类型」选项(图表→属性窗格),且仅对新建或重绘实体生效;已有实体须刷新或重新生成,物理视图下该设置才稳定生效。
navicat 17 默认的 er 图只显示字段名,不显示类型——这是常见困惑点,不是你操作错了。要同时显示 字段名 和 字段类型,必须手动开启「显示字段类型」选项,且该设置仅对新建或重绘的实体生效,已有实体需刷新或重新生成。
ER图中字段类型不显示?检查「显示字段类型」开关是否启用
Navicat 17 的 ER 图默认关闭字段类型渲染,即使你在表设计器里填了 varchar(255) 或 timestamp with time zone,图上也只显示字段名。关键开关在:图表 → 属性窗格 → 显示字段类型(勾选)。这个选项和「显示表字段注释」是分开控制的,别混淆。
- 该设置位于右侧属性窗格,不是顶部菜单栏;若没看到属性窗格,请先右键点击 ER 图空白处 → 选择「属性」
- 勾选后,新添加的实体会立即显示类型;已存在的实体不会自动更新,需右键该实体 → 「刷新」或删掉重拖
- 如果使用的是逆向工程生成的 ER 图,建议在生成前就打开该选项,否则批量刷新很麻烦
为什么有些字段类型仍不显示?确认字段定义是否被 Navicat 正确识别
即使开启了「显示字段类型」,某些自定义类型(如 PostgreSQL 的 domain 或 enum)可能只显示基础类型(如 character varying),而非你定义的 email 或 user_status。这是因为 Navicat 17 当前版本(截至 2026 年 6 月)对用户定义类型的 ER 图映射支持有限,仅解析底层物理类型。
-
create domain email as varchar(255) check (...)→ ER 图中仍显示为varchar(255) -
create type user_status as enum ('active', 'inactive')→ ER 图中显示为user_status(部分版本支持,但不稳定) - 若依赖类型语义做设计评审,建议在「注释」列补充说明,再通过「显示表字段注释」同步到图上
导出或打印时字段类型消失?注意导出格式限制
用「文件 → 导出为 PDF / PNG」时,字段类型有时会丢失或错位,尤其当字段名过长、类型字符串挤占空间时。这不是设置问题,而是 Navicat 渲染引擎对紧凑布局的裁剪逻辑。
- 导出前,在属性窗格中调大「字段行高」或临时缩短字段别名(如把
created_at_timestamp_with_time_zone改为created_at) - PNG 导出质量受「缩放比例」影响极大:设为 200% 再导出,比 100% 下更易保留类型文本
- PDF 导出不支持矢量级字段类型渲染,如需精确排版,建议截图后用 SVG 工具补全,或改用「复制为图像」+ 高 DPI 截图
真正容易被忽略的是:「显示字段类型」开关对不同建模模式(逻辑视图 vs 物理视图)行为不一致——在物理视图下它才稳定生效,而很多人在逻辑建模阶段反复调试却无果。切换前先确认左下角状态栏显示的是「物理」而非「逻辑」。


















