如何批量更新ERD表结构及关联,无需逐个拖拽表至视图?
我之前也碰到过类似的ERD同步头疼问题,给你几个不用逐个拖拽表的实用方案,应该能帮你快速解决:
直接刷新ERD视图:这是最省事的第一步。大多数数据库设计工具(比如MySQL Workbench、DataGrip、Navicat)都自带ERD刷新功能——右键点击ERD的空白区域,找类似
Refresh、Sync with Database或者Update from Database的选项。执行后工具会自动同步所有表的最新结构,包括你修改的列名,同时会重新识别并显示所有关联关系,完全不用手动拖拽。批量同步现有ERD中的表:如果从数据库列表里批量拖拽没用,试试选中ERD里已经存在的所有表(用
Ctrl+A全选,或者按住Ctrl逐个选需要更新的表),然后右键点击选中的表,选择Sync Table with Database或者类似的更新选项。这样工具会把选中的表和数据库里的最新结构对齐,关联箭头也会自动恢复。重新生成ERD并保留布局:如果上面的方法都没效果,可以先备份当前ERD的布局(很多工具支持导出布局文件,或者直接记住表的位置),然后删除当前ERD视图。接着从数据库的表列表里一次性选中所有需要的表,批量导入到新的ERD中——工具通常会自动识别数据库里的外键约束,重建所有关联。之后再导入之前备份的布局,就能快速恢复原来的表位置,不用重新调整。
先确认数据库中的外键约束:有时候修改列名可能不小心触发了外键约束的失效(比如修改的是外键列的名称,而工具没自动更新外键关联)。先去数据库的约束列表里检查一下,原来的外键是否还存在。如果外键没了,得先在数据库里重新创建外键约束,再回到ERD里刷新,关联箭头才会显示出来。
内容的提问来源于stack exchange,提问作者ellie-lumen

