很强,我终于找到绘制E-R图的正确姿势!

标签: 找到 正确 姿势 | 发表时间:2023-03-21 17:42 | 作者:JAVA旭阳
出处:https://juejin.cn/backend

theme: cyanosis

本文正在参加 「金石计划」

前言

不知道大家是不是和我一样,为了追求速度,开发时一般都是直接建表就干,哪管什么E-R图。直到xxx项目找上你,某某客户要E-R图,提供一下吧。这时候就很烦,从头绘制E-R图成本真的很高,今天我就遇到了这个糟心事。

那有什么办法快速从我们的DDL建表语句直接反向生成我们的E-R图呢?如何做到即便新版本表结构发生变化,也能够在原来的基础上做简单增量修改即可满足呢?本文就介绍一种基于 draw.io绘制E-R图的办法,真的很好用。

安装draw.io

draw.io是用于构建图表应用程序的开源技术堆栈,也是世界上最广泛使用的基于浏览器的最终用户图表软件。

  1. 方式一:无需安装,在线使用

在线地址: https://app.diagrams.net

  1. 方式二,安装桌面版,离线使用

下载地址: https://github.com/jgraph/drawio-desktop/releases

  1. 方式三,VSC插件

Visual Studio Code里面左侧菜单扩展项搜索关键词 draw.io即可

我这边使用本地的离线客户端方式进行演示。

创建E-R图

E-R图也称实体-联系图( Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

  1. 新建,选择E-R图

  1. 导入DDL建表语句

在创建语句的基础上做一些修剪替换,其中关键的要点如下:

  • 将主键挪到第一个,其他外键可以紧随在主键后面。
  • 主键后面追加 PRIMARY KEY关键字,以便后续自动生成样式
  • 追加;以表示结束位置
  • 留下所有的NOT NULL标记,移除不必要的内容
  • 仅保留字段名、字段类型、是否支持为空、注释信息

点击插入以后,得到下面的图:

  1. 建立表的关联关系

我们跟进实际的表结构关系建立两个表之间的关系,如下图所示:

你还可以随意修改图表的样式:

这样一个简单的E-R图就画好了,是不是很简单呢。

保存为 可编辑位图文件

这里有个很关键的一个步骤,我们要保存我们的E-R图,切记一定要保存成 可编辑位图文件(.png) 的格式,如下图所示:

为什么要保存成这个格式呢?

这样我们保存好的E-R图发给其他人或者黏贴到文档后,如果需要修改,重新保存或者下载下来,再次用 draw.io打开,又能够继续编辑了,就很方便做到可复用、可更新。简单来说,你保存下来的不简简单单是一张png图片,而是可以再次被draw.io编辑的图片。

总结

draw.io真的是一个非常好用的图形绘制软件,不仅仅是E-R图,绘制其他的架构图、流程图都十分专业且方便,值得推荐一波。不知道大家有没有其他绘制E-R图更好的方式,可以分享一下。

欢迎关注个人公众号【JAVA旭阳】交流学习

相关 [找到 正确 姿势] 推荐:

很强,我终于找到绘制E-R图的正确姿势!

- - 掘金 后端
不知道大家是不是和我一样,为了追求速度,开发时一般都是直接建表就干,哪管什么E-R图. 直到xxx项目找上你,某某客户要E-R图,提供一下吧. 这时候就很烦,从头绘制E-R图成本真的很高,今天我就遇到了这个糟心事. 那有什么办法快速从我们的DDL建表语句直接反向生成我们的E-R图呢. 如何做到即便新版本表结构发生变化,也能够在原来的基础上做简单增量修改即可满足呢.

在Linux进行IO的正确姿势

- - idea's blog
很多C/C++程序虽然在做网络编程, 但大多用别人封装好的库, 对底层不甚了解, 感觉 IO 操作不是很简单吗. 我敢说, 大多数人进行 IO 的姿势都不对, 所谓的 IO, 主要是 read()/write() 两个函数.. 先说错误的 IO 读操作:. 看起来好像很正确的样子, 返回值也判断了, 不仅判断 -1, 还判断 0, 应该姿势正确吧.

Redis 的正确使用姿势

- - IT瘾-dev
说到分布式缓存,可能大多数人脑海浮现的就是redis了,为什么redis能够在竞争激烈的缓存大战中脱颖而出呢. 原因无非有一下几点:性能好,丰富的特性跟数据结构,api操作简单. 但是用的人多了,就会出现很多不规范或者疏忽的地方,严重的时候甚至会导致生产事故,所以我们有必要来聊聊在Redis使用过程中的一些“正确姿势“.

花2分钟了解正确的上网姿势

- Bob - 囧片王
用葛炮的话说是:我有姿势我自豪. 2分钟创意短片,告诉你正确的上网姿势,养成良好的习惯,以后就不会腰酸背痛手抽筋了:.

用正确的姿势避免后背疼痛

- 柯嘉 - 牛博山寨 编辑推荐
一提起身体姿势,妈妈总是知道得最多,她不厌其烦地提醒你要站直、别懒懒散散的,而这些都是正确的建议. But when you stoop or slouch, your muscles and ligaments struggle to keep you balanced — which can lead to fatigue, back pain, headaches and other problems.

如何用正确的姿势让你家的WiFi更安全?

- - 雷锋网
不管是你连入黑客的WiFi,还是黑客连入你的WiFi,最终结果可能都是一样的. 如果蹭你家网的人不安好心,电视中的画面可能会重演哦. 作为一个安全研究者,在物联网还没有这么火的时候就知道,物联网火起来的时候一定会存在网络安全问题. 任何一个新事物,在发展之初都会更多地考虑用户的使用感受,从而忽视一些其他的问题.

Linux下正确删除海量文件的姿势

- - WEB骇客
这里说的“海量”并不是指体积大,而是指数量,比如一个目录下有数百万个小文件. 最近在优化服务器时发现postfix下的maildrop目录和clientmqueue目录下发现有大量的文件,进入这些目录里使用ls命令是愚蠢的做法,而直接执行 rm *,没有任何反应,文件数量也没有减少,也就是说,在海量文件目录里直接使用rm命令进行删除是无效的.

连接池连接HBase的正确姿势

- -
在云HBase值班的时候,经常会遇见有用户咨询诸如“HBase是否支持连接池. ”这样的问题,也有用户因为应用中创建的Connection对象过多,触发了zookeeper的连接数限制,导致客户端连不上的. 究其原因,都是因为对HBase客户端的原理不了解造成的. 本文简单介绍HBase客户端的Connection对象与socket连接的关系,并给出Connection的正确用法.

Kubernetes API探索之旅的正确姿势

- - DockOne.io
【编者的话】本文带你打开Kubernetes API的探索之旅的正确姿势,快来一睹为快吧. 使用CLI(如curl)或GUI(如postman)HTTP客户端调用Kubernetes API有很多理由. 例如,你可能需要对Kubernetes 对象进行比kubectl提供的更细粒度的控制,或者只是想在尝试从代码访问API之前探索它.

少女 、 少妇 、熟妇。姿势

- nethibernate - 微博段子
原文地址:http://www.heartrip.com/tweets/12629.html.