JetBrains 发布了面向 SQL DBA 与开发者的工具 DataGrip 1.0

  • Abel Avram
  • 邵思华

2015 年 12 月 28 日

话题:数据库JetBrainsDevOps语言 & 开发

在经历了一年左右的延期后,JetBrains 终于推出了旗下的 DBA 工具DataGrip 的 1.0 版本。DataGrip 原本的名称叫做 0xDBE,它是一个面向 SQL 数据库管理员与开发者的工具。

DataGrip 将数据库管理员所需的各种工具统一归纳在这一个产品中,而这些工具以往都分散在 JetBrains 旗下的其他产品中。用户在 DataGrip 中能够编辑数据库对象,包括整个数据行,以及表、列或索引键的管理。DataGrip 内置了代码完成、多游标、语法感知选择、与 Git、Subversion 或其他版本控制工具的集成等特性,并且提供了一套插件系统。通过 DataGrip 可以对大多数主流的 SQL 数据库进行管理,包括 Oracle、SQL Server、DB2, Sybase、MySQL、PostgreSQL、SQLite、Apache Derby、HyperSQL 和 H2 等等。不仅如此,它还支持所有提供 JDBC 驱动的数据库。

我们与 JetBrains 进行了一次交流,当问到自 0xDBE 的早期访问预览版本以来这一产品进行了哪些改进时,他们是这样回答的:

  • 数据库 schema 的内省变得更快与更准确了。我们重新设计了 IDE 获取数据库对象元数据信息的方式,UI 也相应地做出了变化。现在,你就能够在数据库视图中将对象进行分组了。
  • 表修改操作可以在数据库工具窗口、或者在编辑器及查询控制台中执行。这些操作能够让你新增、修改或删除列、索引以及外键。
  • 在表修改时可以利用代码生成特性,为你的改动生成相应的 DDL 脚本,并能够进行实时预览。你也可以通过用户界面对现有的 DDL 脚本进行修改,为索引、键或列的新增操作生成脚本,最终通过这些脚本创建完整的表定义。
  • 在表编辑器中可以通过 Ctrl+F 快捷键(在 OSX 系统中是 Cmd-F)进行文本搜索。如果你不清楚你所查找的数据究竟存在于哪个列中,这一特性将显得尤其实用。在文本搜索时还能够使用正则表达式。此外,在表中进行搜索时,你还可以选择隐藏一些不相关的行。
  • 我们特意为打开控制台设立了一个专门的操作,这样你就可以为其赋予任意一个快捷键,以便更快地打开控制台。你还可以同时打开多个控制台,并通过 Files 工具窗口、Recent Files 菜单或是 Navigation 工具栏在这些控制台之间进行切换。每个控制台现在都包含了一个 schema 切换器。
  • 控制台现在提供了本地历史特性,可以通过它审查你在某个控制台中对 SQL 代码所做的改动,或是在 Diff Viewer 中进行版本比较,并在必要时撤消你的操作。
  • 我们扩展了查询执行的选项。首先,我们改进了运行所选中代码的功能,并且支持多个文件的选中。你可以自行选择如何应对所选中的 SQL 代码:可以作为多个语句运行,也可以作为单一语句运行,或是对有效的脚本进行智能扩展。当光标位于查询语句中间时,你将可以从一系列选项中选择语句的执行方式,定义你所期望的行为。包括最小语句执行、最大语句执行、或是主动询问你要选择哪部分语句进行执行。而如果光标并没有选中任何语句,你可以选择不执行任何操作、执行整个文件、或是选择执行光标之后的所有语句直到文件末尾。
  • SQL 语句的执行计划能够以可视化的方式展现数据库在执行你的查询以返回数据时所进行的操作,并帮助你对查询进行优化。你可以选择以图形的方式、或是以表格的格式查看执行计划。
  • DataGrip 能够以表格的形式对 CSV 文件进行编辑。你要做的只是在右键菜单中单击“Edit As Table”选项、选择分隔符、指定表格是否需要表头、以及何时为单元格的值加入引号等等设置。在进行编辑时,可以对表格进行实时预览。
  • 在 DataGrip 中,你可以通过 Ctrl+Alt+U 快捷键,或是在你选择的对象的右键菜单中选择以可视化图形的方式查看你所定义的表,以及表之间的关联。在图中可以选择隐藏主键与外键,只以关联线的方式表现。在必要时,还可以将这些图形导出为图片文件。

关于产品发展的路线图,据我们所知,JetBrains 的计划是这样的:

  • 改进数据库 schema 的内省以及 DDL 脚本的生成。
  • 提供对触发器的支持,并提供超越 JDBC API 的特性。
  • 改进表的编辑器,例如多单元格的更新以及值的完成。
  • 可视化图形将能够进行编辑操作,我们还打算让 Diff Viewer 支持查询计划。
  • 我们还考虑为 NoSQL 提供一些有限的支持。

DataGrip 产品是JetBrains ToolBox系列中的一部分,但也可以选择单独购买。

查看英文原文:JetBrains Releases DataGrip 1.0 for SQL DBAs and Developers

数据库JetBrainsDevOps语言 & 开发