navicat 不支持直接打印适合团队讨论的纸质模型稿,因其导出的er图存在缩放失真、字段重叠、注释缺失等问题;可靠方案是导出ddl转markdown再生成带目录pdf,或用报表设计器制作分页带批注的pdf。
navicat 没有“打印模型”功能,它不支持将数据库模型导出为适合团队讨论的纸质稿(比如带说明、分页、标注、可读排版的 pdf 或 word)。所谓“打印模型”,实际是导出 er 图或 ddl 的变通操作,但直接打印会丢失上下文、比例失真、字段重叠、无业务注释——根本没法拿去开会用。
Navicat 导出的 ER 图 为什么不能直接打印成讨论稿?
Navicat 的 ER 图 是交互式画布,导出为 PNG/SVG 后:图层缩放不可控,表多时自动堆叠,外键连线交叉密集,字段名被截断;Print 菜单项只调系统打印机,不触发布局优化;导出 PDF 时默认 A4 尺寸下,10 张表挤在一页,字号小于 6pt,肉眼难辨。
- 导出前必须手动拖拽调整所有表位置,隐藏非核心字段(右键表 →
Hide Columns) -
Export as Image选PNG时分辨率设为300 dpi,否则打印模糊 - 若含中文字段名,导出前确认 Navicat 字体设置已勾选
Use system font,否则 PDF 中文字显示为方块
真正能用于团队讨论的纸质稿,得靠 DDL + Markdown 组合生成
比截图更可靠的方式是:用 Navicat 生成建表语句,再用脚本转成结构清晰的 Markdown,最后用 Pandoc 或 Typora 导出为带目录、页眉页脚的 PDF。这样每张表独立成节,字段类型对齐,注释保留,还能加业务说明段落。
- 在 Navicat 中右键数据库 →
Quick DDL→ 全选表 → 复制 SQL 到文本文件 - 用 Python 脚本提取
COMMENT和字段定义,生成 Markdown 表格(示例片段:re.findall(r'`(\w+)`\s+(\w+[^,]*),?\s*COMMENT\s+\'([^\']+)\'', sql)) - 用
pandoc -o schema.pdf schema.md --pdf-engine=xelatex --toc输出带目录的 PDF,xelatex 支持中文字体
如果非要现场快速出稿,用 Navicat 报表设计器 替代截图
Navicat 的 Report Designer 可以把表结构转成表格型报表,虽然不如 Markdown 灵活,但胜在不用写代码,且支持分页、页眉插入会议主题、每页底部加版本号(如 v20240521-讨论稿)。
- 新建报表 → 添加
Data Source选当前连接 → 拖入Tables对象 - 双击字段列 → 在
Format标签页勾选Wrap text,避免长注释撑破页面 - 导出时选
PDF,在Page Setup中把Scale设为90%,留白给手写批注
最常被忽略的是:纸质稿不是越全越好,而是要按讨论目标裁剪。比如评审接口字段,就只导出 API 相关的 3 张表 + 字段级 COMMENT;讨论历史数据归档,则需额外加索引信息和分区字段。模型本身只是起点,真正需要的是人对它的解释——那部分,得手动补在打印稿空白处,而不是指望工具自动生成。











