小吴总的开篇鸡汤
有人说不具备全局观的设计者想着如果把一片树叶设计的非常美,而忘了树叶需要树枝,树枝是构成大树的一部分,所以说去培育一片森林,才叫做设计。而数据库设计亦是如此,如果纠结于某个列某个表的设计,而忘了整体架构上的把控,这不是一个合格的设计者!
开发中我们不可避免的需要进行数据库结构设计,一个好的设计工具可以帮助研发人员更好的展现表的数据结构,数据类型,以及表和表之间的关联关系,这无疑是开发设计环节中重要的第一步。在pc端我们有一个强大的利器就是powerdesigner,但是这款收费软件因为国情可能并不适合一些人,并且在mac上也不支持,这最终导致笔者开始尝试找到一款好用的在线设计工具,寻寻觅觅之后在此给各位兄弟推荐一波找到的这些好的工具:
Dbdiagram.io(https://dbdiagram.io/home)
简单的ER图绘制工具
1.dbdiagram.io提供一个免费而简单的数据库设计工具
2.可以通过类似markdown那样的简单编码绘制出数据库的ER图
3.可以允许在线保存和共享设计图
4.可以将设计图导入导出为pdf和png,
5.更强大的是可以直接导出符合postgres或mysql语法的sql文件。
6.整体感觉设计简单,使用方便,完全免费值得推荐
dbdesigner(https://www.dbdesigner.net/)
1.dbdesigner提供一个先进而稳定提供在线可视化数据库设计
2.以类似powerdesigner风格的方式设计数据库ER图
3.可以导出pdf和图片
4.可以与您的团队分享和协作
5.可为以下任何数据库引擎生成SQL脚本:PostgreSQL,SQLite,MySQL™,MSSql™,Oracle®
6.免费版限2个库10个table,整体设计感觉偏传统
QuickDBD(https://www.quickdatabasediagrams.com/)
1.只需使用键盘即可绘制架构图,省时省力
2.支持分享,可以与tweet,facebook,google+,linkedin
3.可以支持导出SQL,适用于oracle,mysql,sql server,postgres
4.可以导出设计图为pdf,rtf,png和svg格式
5.整体与Dbdiagram.io类似,分为基础免费版和收费专业版
Draw.io(https://www.draw.io/)
一个丰富的图表设计工具
1.Draw.io不仅是一个数据库架构图的设计工具,还可以用于制作组织结构图,流程图,UML图,网络拓扑图等。
2.不支持导出sql,不支持导出图片,只支持保存为特殊的drawio格式文件
3.允许将图表保存到本地或云存储服务,支持Google Drive,OneDrive
4.整体界面感觉比较一般,不适合颜值党
Lucidchart(https://www.lucidchart.com/)
一个自带小姐姐的设计工具
1.lucidchart不仅可以创建数据库图表,还可以创建流程图,流程图,UML模型,组织结构图等。
2.支持拖拽方式设计图表,也支持导出
3.简直是drawio的克星,功能相似,但是整体设计与颜值明显高一档,分为免费版和测试版本,免费版有一些限制
SQLDBM(https://www.sqldbm.com/)
1.可以拖拽编辑数据库对象,包括表,键值,模式,索引,列约束和关系
2.支持mysql,postgres,sqlserver,amazon redshift,snowflake等数据库
3.特别逆天的功能是支持正向工程和逆向工程
4.可以导出sql,不能导出图片
5.支持3种查看视图:sample view是默认视图,可完整查看列级别的结构图;high level view可以从table级别查看实体间的关系;keys view用于方便的查看主键和外键的关系结构图。
6.支持项目分享和协作编辑以及版本历史管理
7.整体感觉功能比较丰富,界面设计清晰简洁,有免费/收费版本区别,值得推荐
达人哥文末的总结
其实还有其他很多类似的产品,比如vertabelo,visual-paradigm,creately,smartdraw,dbschema,但这些产品都是收费的避免不能方便的试用。还有一些开源的产品比如VisualAlchemist,eralchemy,他们的缺点是功能不够丰富,ui也比较简陋。希望读者您可以在这些产品中找到一款适合于自己的。如果您有发现更好的工具,欢迎留言或者私信给我,谢谢大家。