DataGrip 2020.2 最新变化

数据编辑器

单独的单元格值编辑器

单独的单元格值编辑器

现在,如果您的单元格中有一个巨大的值,可以在单独的面板中进行查看或编辑。 您还可以使用右侧工具栏切换自动换行模式。 为您的数据使用我们的代码编辑器的所有功能!

数据编辑器中的 DML 预览

在数据编辑器中预览 DML

从该版本开始,您可以在数据编辑器中检查表示您的更改的查询。 存在未决定更改时,现在会有一个 DML 按钮处于活动状态:

数据编辑器中的 DML 预览

您将看到一个包含 DML 预览的对话框。 此查询不是将要运行以修改您的数据的确切 SQL,因为 DataGrip 使用 JDBC 驱动程序来更新表,但大多数情况下它是相同的。

布尔值的新 UI

为布尔值提供新 UI

这是一个相当受欢迎的开发成果! 现在提供了一种更方便用户查看和编辑布尔值的方法。 True 值现在用一个圆点标记,以区别于其他所有值。

编辑:

  • 空格键可以像以前一样对值进行切换。
  • 键入 ftdngc 将输入相应的值:falsetruedefaultnullgeneratedcomputed。 我们很幸运,所有这些值都以不同的字母开头!
  • 键入任何其他内容将打开包含所有可能值的下拉列表。
剪裁数据的新 UI

为剪裁数据提供新 UI

有时 DataGrip 无法加载给定单元格的所有数据。 如果单元格中数据的大小大于 Database | Data views | Max LOB length 设置所允许的大小,就会发生这种情况。 在这些情况下,我们过去常常向值中添加一小段文本,例如“10 KB of 50 KB loaded”。 现在我们只显示一个提示,而不是更改值。

数据编辑器上下文菜单中的 Export to Clipboard

在数据编辑器上下文菜单中添加 Export to Clipboard

在我们引入了一个用于导出数据的对话框窗口之后,将整个结果或表导出到剪贴板这个很小的场景变得更加复杂。 因此,我们在上下文菜单中添加了以下项:

请注意,Copy 复制选定内容,而 Export to Clipboard 则复制整个数据集。

更好地筛选 MongoDB

更好地筛选 MongoDB

除了 ObjectIdISODate 外,筛选功能现在还支持 UUIDNumberDecimalNumberLongBinData。 此外,如果剪贴板中存在有效的 UUID/ObjectId/ISODate,您还将在建议的筛选器列表中看到此值。

更好地筛选 MongoDB

我们还向筛选功能中添加了正则表达式,以免您缺少来自 MongoDBLIKE 筛选器。

SQL 编辑器

新检查微件

新检查微件

新检查微件使您可以更轻松地查看脚本中的所有问题并在它们之间浏览。 它提供了当前文件中警告、错误和其他问题数量的详细信息。 您可以使用箭头图标浏览文件中的错误,当然也可以使用 F2 快捷键浏览错误。

原位重命名

Suggested Rename

如果您在代码中更改了对象的名称,工具栏上的这个小按钮将允许您进行重构! 例如,这是它对别名的操作方式:

更好的 JOIN 补全

更好的 JOIN 补全

补全 JOIN 子句的操作减少一步:现在,当您开始输入 ‘JOIN’ 时,我们会提供整个子句:

更好的 JOIN 补全

此外,补全还提供了一种通过两列进行联接(如果适用)的方法:

Refresh database 快速修复

Refresh database 快速修复

有时,脚本中会有未解析的对象。 如果确实存在这种情况,DataGrip 将不了解这些对象的位置,并怀疑它们根本不存在。 尽管在很多情况下是这样,但有时对象不进行解析,因为您只需要调整要处理的上下文即可。

我们添加了 Refresh database 快速修复,如果自上次刷新数据库以来,某个对象已从其他位置添加到数据库中,该快速修复将为您提供帮助。

Introduce variable

Introduce variable

现在,更多方言支持此重构:SQL ServerDb2ExasolHSQLRedshiftSybase。 您可以从任何具有简单类型的表达式引入变量。

Google BigQuery 方言

Google BigQuery 方言

我们添加了一个新的 SQL 方言:Google BigQuery。 尚未完全支持 BigQuery,但万事皆有始。 到目前为止,如果您使用 Google BigQuery,DataGrip 可以正确高亮显示您的查询并为查询提供编码辅助。

TextMate 捆绑包

TextMate 捆绑包

TextMate 是一个面向 Mac 的文本编辑器,它为多种语言提供了语法高亮显示捆绑包。 我们可以在 DataGrip 中导入并使用它们。 从该版本开始,IDE 将为绑定包中注册的文件类型提供语法高亮显示。

现在,默认情况下,您的 PythonJavaScriptShell 和许多其他类型的文件将具有语法高亮显示。 要查看所有适用的文件类型,请转到 Settings/Preferences | Editor | TextMate bundles

SQL 2016 for Generic 方言

SQL 2016 for Generic 方言

现在,以 Generic 方言高亮显示的文件和控制台将以 SQL 2016 高亮显示。 以前,使用的是 SQL 92。 此更改的主要改进是无需选择任何代码即可运行通用表表达式。

SQL 格式化程序的原始对象大小写

SQL 格式化程序的原始对象大小写

以前,SQL 格式化程序具有三个用于修改代码中对象名称的选项:更改为大写更改为小写不更改。 但发现这还不够——某些人需要根据声明中使用的大小写来更改对象名。 现在我们提供了这个选项。

SQL 格式化程序的原始对象大小写

它的工作原理为:表 Actor 被声明为首字母大写,而格式化程序则使其保持不变。

提示:如果声明在另一个 sql 文件中,请基于您的 sql 文件创建 DDL 数据源,以便格式化程序使用正确的大小写。

选择内容的每一行有多个脱字符号

选择内容的每一行有多个脱字符号

此新操作是放置多个脱字符号的另一种简便方法! 只需选择代码,然后通过 Find Action 或专用快捷键 Shift+Alt+G 调用多个脱字符号

数据库树形目录

数据库树中的所有数据库和架构

数据库树中的所有数据库和架构

DataGrip 将仅显示您选择显示的数据库和架构。 虽然这在您有许多数据库和架构的情况下十分有用,但它也定义了哪些架构需要内省,因为 DataGrip 会从数据库中加载元数据并在以后使用。

不过,有些人更习惯于始终显示所有可用数据库和架构的工具。 他们还希望刷新后在数据库资源管理器中显示外部添加的架构。

这就是为什么我们向数据库资源管理器中添加了一个新选项的原因:Show All Namespaces。 在这种模式下,未内省的数据库和架构会灰显。

用于创建视图的 UI

用于创建视图的 UI

尽管我们一直鼓励用户在创建视图时使用 Generate 功能(在 SQL 编辑器中为 Alt+Ins),但许多用户更喜欢使用 UI。 我们采纳了用户的意见,并为此添加了一个 UI 选项。

对 Oracle DB 链接的基本支持

对 Oracle DB 链接的基本支持

现在,Oracle DB 链接显示在数据库资源管理器中,并且使用它们的代码已正确高亮显示。

常规

长标签页问题不复存在!

长标签页问题不复存在!

还有另一个在 2020.2 中不会困扰您的实用性问题:长标签页

现在的工作原理:

  • 现在,Database | General | Always show qualified names for database objects 选项默认处于关闭状态。 仅当打开两个具有相同名称的对象时,才会在标签页名称中限定对象。 例如,如果打开来自不同架构的两个 actor 表,架构名称将显示在标签页名称中。 否则,将不会显示。
  • 如果数据源名称的长度超过 20 个符号,它将被截断。
  • 如果您只有一个数据源,DataGrip 将不会在标签页名称中显示它。
  • 如果限定对象名称的长度超过 36 个符号,它将被截断。
驱动程序设置中的原生库

驱动程序设置中的原生库

现在,您可以为驱动程序指定任何原生库的路径。 这在下面几种情况下十分有用:

  • SQL Server 中,如果您手动设置驱动程序,则可以指定 mssql-jdbc_auth-‹version›-‹arch›.dll 来进行 SSO 身份验证。 默认情况下,SSO 身份验证开箱即用。
  • Oracle 数据库中,可以指定 ocijdbc 库来使用 OCI 驱动程序。
  • SQLite 中,您可以指定运行时可加载扩展,以便可以更轻松地在查询控制台中使用它们。 无需指定完整路径。
*.js 文件的运行配置

*.js 文件的运行配置

如果您有 MongoDB 脚本,则可以从中创建运行配置。

已捆绑 Git 和 Github 插件

已捆绑 Git 和 Github 插件

最后但同样重要的是:GitGithub 插件现在可以在 DataGrip 中开箱即用,因此您无需从插件 Marketplace 中安装它们。