讲师中心 微信公众号
AI工具推荐 视频效率加速

如何用Navicat逆向生成SQL Server ER图

小瑶酱_4433

小瑶酱_4433

发布时间:2026-07-31 08:16:50

|

808人浏览过

|

来源于php中文网

原创

Navicat 逆向生成 SQL Server ER 图需启用“包含系统对象”并授予用户对 sys 视图的 SELECT 权限,否则无法读取外键等元数据,导致关系线缺失、表名错乱;还须勾选全部关联表、运行“验证模型”补全禁用外键,并确保导出前显示完整数据类型。

navicat 能逆向生成 sql server 的 er 图,但必须启用「包含系统对象」且用户需有对 sys 视图的 select 权限;否则外键全丢、表名错乱、关系线消失——这不是 navicat 抽风,是它根本查不到约束元数据。

SQL Server 连接设置里必须勾选「包含系统对象」

Navicat 默认跳过 sys 系统视图,而 SQL Server 的外键、主键、索引等元数据全存在 sys.foreign_keys、sys.columns 等表里。不打开这个开关,逆向过程连约束定义都看不到。

  • 操作路径:右键已建连接 → 「编辑连接」→ 「高级」选项卡 → 勾选 包含系统对象
  • 若用 Navicat Premium Lite,该选项可能叫 Include system objects(英文界面)
  • 改完必须重新连接,否则设置不生效

用户账号至少要有 SELECT 权限在 sys schema 上

即使 DBA 给了业务库所有权限,若没显式授权访问 sys,Navicat 就会静默失败:ER 图里只有表框,没连线,字段类型显示为 generic,验证模型时提示“未识别外键”。

  • 用 SSMS 或 sqlcmd 执行:SELECT TOP 1 * FROM sys.foreign_keys;,报错则确认权限缺失
  • DBA 需执行:GRANT SELECT ON SCHEMA::sys TO [your_user];
  • 注意:SQL Server 2012+ 中,public 角色默认无 sys 访问权,不能依赖默认配置

逆向时别只选「表」,要确保关联表全部被加载

SQL Server 外键引用的表名大小写敏感(尤其启用了区分大小写的排序规则时),且 Navicat 不自动补全未选中的引用表。比如 orders 表外键指向 Customers,但你只勾了 orders,那关系线就断了。

navicatmysql
navicatmysql

Navicat For MySQL

下载
  • 务必使用「数据库 → 逆向数据库到模型」,而不是右键单表「逆向表到模型」
  • 弹窗中勾选「表」,取消勾选「视图」和「存储过程」——视图名若与表名相同(如 user_summary 视图 + user_summary 表),Navicat 会当成两个实体重复绘制
  • 如果库极大(>500 张表),先手动勾选核心业务表,避免卡死或超时

导出前必须点「模型 → 验证模型」再手动补关系

SQL Server 允许用 WITH NOCHECK 创建禁用状态的外键,Navicat 默认不识别这类约束。验证模型会扫描所有未映射的外键列,并列出可补全的候选关系,支持一键添加。

  • 验证后若弹窗提示“Found 3 foreign keys not imported”,点「Fix」即可批量补线
  • 补完仍缺字段注释?检查是否在 SQL Server 中用 sp_addextendedproperty 添加过描述,且连接时已启用 读取扩展属性(部分 Navicat 版本需在「模型设置」里开启)
  • 导出 PDF/PNG 前,先右键画布 → 「选项」→ 勾选 显示完整数据类型,否则 datetime2(3) 会显示成 DATETIME

最常被跳过的一步是验证模型——很多人导出后才发现关系线少了一半,其实补全操作就在弹窗里,两秒点完,但没人愿意多等那一下提示。

热门AI工具

更多
墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

相关专题

更多
sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

5591

2023.08.11

常用的mysql管理工具
常用的mysql管理工具

常用的mysql管理工具有:1、MySQL Workbench、phpMyAdmin、MySQL Shell、Navicat、DBeaver和DataGrip。更多关于mysql管理工具的问题,详情请看本专题下面的文章,php中文网欢迎大家前来学习。

5810

2023.11.03

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

60

2026.10.16

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

40

2026.10.16

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

40

2026.10.16

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

20

2026.10.16

Revel框架MVC路由与控制器
Revel框架MVC路由与控制器

本专题聚焦Revel框架MVC核心机制,讲解路由定义、控制器Action、参数绑定、请求响应和反向路由,并结合常见场景梳理接口请求处理流程。

20

2026.10.16

Revel框架入门与安装配置
Revel框架入门与安装配置

本专题从Revel框架环境搭建讲起,系统介绍命令行工具安装、项目创建、目录结构、配置文件及热代码重载,帮助开发者快速完成首个Go Web应用。

20

2026.10.16

Linux 新手先学哪些命令
Linux 新手先学哪些命令

Linux新手命令专题汇集终端基础、文件目录操作、文本查看、软件安装和权限管理等入门文章,帮助按实际任务练习常用命令并建立命令行操作习惯。

40

2026.10.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
SQL 教程
SQL 教程

共61课时 | 7.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn