推荐 四种优秀的数据库设计工具[通俗易懂]

推荐 四种优秀的数据库设计工具[通俗易懂]点击“终码一生”,关注,置顶公众号每日技术干货,第一时间送达!众所周知,良好的数据库设计能够大幅减少后期的运维工作,同时也能最大程度地减少软件项目出错的可能。由于我们所面临的真实项目需求往往五花八门,因此需要找到合适的设计工具,来实现事半功倍的效果。本文将从如下四个方面和您一起比较四种优秀数据库设计工具的各自优缺点。 用户界面 可支持的数据库 数据工具 售价 1、DbSchema官网:https://dbschema.com

大家好,又见面了,我是你们的朋友全栈君。

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!

众所周知,良好的数据设计能够大幅减少后期的运维工作,同时也能最大程度地减少软件项目出错的可能。由于我们所面临的真实项目需求往往五花八门,因此需要找到合适的设计工具,来实现事半功倍的效果。

本文将从如下四个方面和您一起比较四种优秀数据库设计工具的各自优缺点。

  • 用户界面

  • 可支持的数据库

  • 数据工具

  • 售价

1、DbSchema

官网:https://dbschema.com/

图片

DbSchema是一种可用于复杂数据库设计和管理的可视化工具。该工具已经集成在大多数主流操作系统之中。

用户界面

DbSchema具有友好的用户界面,可简化数据库的设计。它能够为管理大型数据库提供友好的界面布局,以便用户更专注于数据库的特定功能。

如下图所示,DbSchema界面能够让用户自由地浏览各种视图,在布局中拖放表格,或通过双击的方式来编辑表格中的数据。

图片

逆向工程

DbSchema可以轻松地对现有数据库的架构模式(schema)进行反向工程。

项目文件和架构模式同步

DbSchema将本地的模式设计保存到一个项目文件之中。使用此类项目文件,用户在无需连接数据库的情况下,直接修改目标架构模式的设计。这些更改将会被保存在对应的项目文件中。当再次与数据库连接时,用户可以通过比较该项目文件和目标数据库之间的差异,实现相互之间的同步。

共享

用户可以使用GIT或其他版本控制类系统,轻松地在团队内部共享DbSchema的各种项目文件。而且,单个架构模式可以在多台服务器之间自由迁移。由于此类项目文件是XML格式的,因此用户可以使用任何一种文本编辑器,去轻松地读取或编辑。

可视化数据工具

DbSchema集成了三种实用的数据工具:

  • 关系型数据浏览(Relational Data Browse)使用户可以同时浏览多个表中的数据。

  • 可视化查询生成器(Visual Query Builder)以可视化的方式创建复杂的SQL查询。

  • SQL编辑器(SQL Editor)是使用文本自动完成(autocompletion)功能的强大编辑器。

支持的数据库

DbSchema能够与大多数数据库相集成,并可以通过JDBC驱动程序连接到其他数据库上。另外,DbSchema还能够通过反向工程来设计Mongo DB的架构模式。

售价

DbSchema提供15天的免费试用期。15天之后,您可以选择如下三种定价方案中的一个:

  • 学生 — 63美元 – 终身许可证。

  • 个人 – 127美元 – 终身许可证,一年内免费更新。一年后,用户每年需要为更新支付31美元。

  • 商业 — 197美元 – 终身许可证,一年内免费更新。一年后,用户每年需要为更新支付48美元。

如果您一次性购买了3个或更多DbSchema许可证,则可享受15%的批量折扣。

总结

DbSchema是一个多合一的数据库设计器与管理器。它被认为是管理复杂数据库的一款非常实用的工具。DbSchema的主要缺点是其表单和报表引擎比较难用。

2、Vertabelo

官网:https://www.vertabelo.com/

图片

作为一款在线的数据库设计工具,团队成员既可以通过Vertabelo轻松地在项目上开展协作,也可以通过电子邮件与团队成员共享访问的各种权限。目前,Vertabelo提供三种不同的访问级别:所有者、编辑者和查看者。

用户界面

Vertabelo集成了简洁明了的界面。用户可以在模型之间进行流畅的切换,而不必离开其设计区域。

如下图所示,该工具集成了快速搜索和快速导航菜单,它们对于大型数据库的使用是非常实用的。

图片

逆向工程

Vertabelo允许用户对数据库中的架构模式进行反向工程。由于没有针对反向工程的图形界面,用户需要通过访问其官网,以获取命令行。另外,其反向工程的另一个缺点是:用户必须在上传之后手动安排各种表格

模型

Vertabelo使用模型来保存设计。这些模型可以作为具有不同访问级别的文档,在团队之间共享。此外,开发者还可以:

  • 使用公共链接,在Vertabelo之外共享模型。

  • 通过克隆,以跟踪过往设计的旧版本。

  • 类似DbSchema项目文件那样被使用。

支持的数据库

Vertabelo仅支持八种主流的数据库,它们分别是:Oracle、MySQL、PostgreSQL、SQLite、IBM DB2、SQL Server、HyperSQL和Amazon Redshift。

售价

Vertabelo提供7天的免费试用期,7天之后,您可以选择如下三种定价方案中的一个:

  • 基本方案 – 9美元/月,最多可有5个数据库模型,每个模型最多有25张表。

  • 高级方案 – 29美元/月,最多可有20个数据库模型,每个模型最多有100个表。

  • 团队方案 – 从79美元/月到799美元/月不等,具体取决于团队的规模。该方案提供了无限个数据库模型,以及每个模型里无限数量的表。

总结

作为优秀的数据库设计工具,Vertabelo具有友好且时尚的界面。它不但易于被访问和使用,并且易于在团队中实现工作的共享。不过,它也有着如下缺点:

  • 支持的数据库较少。

  • 逆向工程工具不太“友好”。

  • 缺少稳定的SQL编辑器。

3、Toad Data Modeler

官网:https://www.toadworld.com/products/toad-data-modeler

图片

作为一款数据库建模工具,Toad Data Modeler使用到了自动化且直观的工作流程,并且内置了专业的知识库。随着时间的推移,Toad建立了一个大型开发者社区,并成为了广受欢迎的数据库方案。

用户界面

Toad集成了一套用户界面,它可以帮助用户更好地了解现有的数据库和对应的表之间的关系,进而创建各种逻辑和物理的数据模型。

如下图所示,Toad可以自动地在物理模型中映射数据库的所有属性。

图片

逆向工程

Toad可以通过连接到数据库,来对架构进行逆向工程。

模型与同步

Toad使用户能够将逻辑模型转换为选定的物理模型(例如Oracle和SQL Server等)。您也可以将既定的物理模型转换为另一种物理模型,例如:将Oracle模型转换为SQL Server。

在同步方面,用户可以使用该工具将模型与数据库进行比较,进而生成用于迁移的变更脚本。此外,Toad还可以让用户从数据库中直接更新模型。

自动化

Toad可以自动化诸如数据和架构模式之间的比较流程。

SQL代码的生成

Toad可以生成各种复杂的数据库DDL脚本。此外,它还可以在关联的应用程序中打开已生成的SQL脚本。

报告

Toad可以生成HTML、RTF、以及PDF格式的报告。

支持的数据库

Toad工具可以连接到多个数据库上,其中包括:Oracle、SAP、MySQL、SQL Server、以及PostgreSQL等。

售价

Toad提供30天的免费试用期。30天之后,用户可以637.45美元的价格购买Toad Data Modeler许可证,其中包含1年的技术支持。

总结

总的说来,Toad是一个具有许多出色功能的数据库建模平台。当然,它也具有如下的缺点:

  • 无法提供非常直观的用户界面。

  • 许可证比较昂贵。

4、DbVisualizer

官网:https://www.dbvis.com/

图片

同样作为数据库管理与设计工具的DbVisualizer,集成了许多数据库,并且能够工作在各种主流操作系统上。

用户界面

DbVisualizer集成了一个易用的界面。用户可以用它来浏览复杂的架构和编辑数据。

如下图所示,该界面允许用户执行各种操作,其中包括:拖放、固定标签、在单独的窗口中分离标签、以及内联编辑(inline edit)等。

图片

服务器管理

DbVisualizer使用户可以管理数据库服务器的实例、整体安全性、以及会话存储。此外,用户还可以计划和执行各种针对Oracle、MySQL、PostgreSQL和SQL Server的操作。

比较

DbVisualizer允许用户比较诸如表格数据和脚本之类的对象,以及两个表与过程的DDL。而且,其比较界面非常简洁明了。

SQL工具

DbVisualizer提供如下实用的SQL工具:

  • SQL Commander — 一种支持多个编辑器和结果集的查询工具。

  • Query Builder – 使用户可以直观地创建和执行查询。

  • Explain Plan – 一种用于分析如何在数据库中使用某种查询的工具。不过此功能仅适用于某些数据库产品。

DbVisualizer工具集成了一个SQL历史记录工具,用户可以在其中查看以往的查询信息。

支持的数据库

DbVisualizer能够与许多主流数据库集成到一起,并且可以使用JDBC驱动程序去连接其他数据库。

售价

虽然DbVisualizer提供了免费版的工具,但是该版本缺少一些重要的功能。其完整版工具的售价为:每位用户197美元/许可证,而每位用户的续证费用为69美元。当然DbVisualizer也会视用户团队的规模给予许可证一定的折扣。例如:对于拥有50名以上的团队而言,最便宜的价格为:每位用户141美元,以及50美元的续签费用。当然,该工具也提供了一种高级支持类型的许可证。

总结

作为出色的数据库管理工具,DbVisualizer具有友好的用户界面,并能够在所有流行的操作系统上运行。当然,DbVisualizer的缺点主要集中在:其免费版本没有足够的功能,而付费版本又过于昂贵。

PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157229.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 怎么给idea配置jdk_ideaj配置tomcat

    怎么给idea配置jdk_ideaj配置tomcat这里写自定义目录标题如何给Idea配置Tomcat安装Tomcat过程中出现的问题:怎么给idea配置idea如何给Idea配置Tomcat思路:首先下载好Tomcat安装包,然后安装好Tomcat,Tomcat安装成功后,再打开idea进行tomcat的配置。一、怎么安装Tomcat1.首先去官网(镜像网站)下载idea对应版本的tomcat2.下载完成tomcat后,放到你自己选择的文件位置。比如说我这里就是放在了D:\ProgramFiles\Java文件夹下面3.然后给Tomcat配

    2022年8月25日
    6
  • 共享内存同步机制_共享内存通信机制

    共享内存同步机制_共享内存通信机制共享内存是SystemV版本的最后一个进程间通信方式。共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到他们自己的地址空间中,所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任…

    2025年8月8日
    3
  • java栈内存初始化,阿里面试官:小伙子,你给我说一下JVM对象创建与内存分配机制吧…

    java栈内存初始化,阿里面试官:小伙子,你给我说一下JVM对象创建与内存分配机制吧…内存分配机制逐步分析类加载检查:虚拟机遇到一条new指令(new关键字、对象的克隆、对象的序列化等)时,会先去检查这个指令的参数在常量池中定位到一个类的符号引用,并且这个符号引用代表的类是否应被加载过,如果没有那么就去加载该类分配内存类加载完毕后会给对象分配内存空间。对象的所需的内存大小在类加载完毕后就便可完全确认,为对象分配内存大小的空间等同于把一块确定大小的内存从java堆中划分出来。如何划分…

    2022年5月14日
    38
  • 什么是dll_dll文件怎么打开编辑

    什么是dll_dll文件怎么打开编辑   DLL的概念    DLL(DynamicLinkLibrary)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使…

    2022年4月18日
    40
  • shell输出数组元素_shell中使用数组

    shell输出数组元素_shell中使用数组数组介绍平时的定义a=1,b=2,c=3,变量如果多了,再一个一个定义很费劲,并且取变量的也费劲简单的说,数组就是相同数据类型的元素按一定顺序排列的集合数组就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们得边合。这个名字成为数组名,编号成为数组下标。组成数组的各个变量成为数组的分称为数组的元素,有时也称为下标变量数组定义与增删改查法1:array=(value1value2valu…

    2025年7月23日
    3
  • js 字符串截取substr和substring详解

    js 字符串截取substr和substring详解1.substr 方法返回一个从指定位置开始的指定长度的子字符串。stringObj.substr(start [, length ])参数stringvar:必选项。要提取子字符串的字符串文字或 String 对象。start:必选项。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。length:选项。在返回的子字符串中应包括

    2022年5月29日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号