DataGrip 2020.2:大值编辑器,编辑时的SQL预览,布尔单元的新显示等

你好!在过去的四个月中,我们一直在各个版本之间发布功能,因此本文介绍了自那时以来DataGrip的新功能它的时间恰好与我们的新版本2020.2相吻合。原来很长,但我们希望有用。







资料编辑器



大型值编辑器



我们已向单元格中添加了完整的编辑器。如果单元格包含长值,例如XML或JSON,则在单独的面板中打开它很方便。为此,请单击上下文菜单中的“

最大化”。 立即







编辑时预览查询



,在数据编辑器中编写新值之前,您可以看到将执行哪个查询。为此,请单击工具栏上的DML按钮







老实说,这不仅仅是我们运行查询,因为DataGrip使用JDBC驱动程序来编辑数据。但是在大多数情况下,我们显示的内容将与实际开始的内容一致。







逻辑单元的新显示



之前,我们使用复选框显示布尔类型的单元格。这很不方便:不是每个人都了解如何区分nullfalse,并且默认值,computenull都完全相同。我们决定不聪明,并在文本中写出含义。







该复选框具有一个加号:可以很容易地在视觉上找到真实。在新界面中,该点执行此任务。



我们很幸运:用英语,所有可能的含义都以不同的字母开头。因此,要进行编辑,只需按所需值的第一个字母:f,t,d,n,gc。如果我们打印其他内容,将显示一个下拉列表。空格键在可用值之间切换。



CSV文件的自动数据编辑器



以前,您必须从上下文菜单中调用数据编辑器,并且在打开CSV文件时,一个黄色的小条广告了第三方插件。现在,我们自己弄清楚什么,并显示CSV文件的“数据”标签







粘贴值时的新行



如果您从剪贴板将数据粘贴到表中,那么我们将自动创建所需数量的新行。







数据



不足的新接口有时,DataGrip如果占用大量内存,则无法将所有数据加载到单元中。这是由数据库确定的。资料检视|最大LOB长度。以前,我们将有关此内容的文本直接插入到单元格值中,这很不方便。现在是一块小小的盘子:







从上下文菜单导出到剪贴板



在上一发行版中,我们制作了一个导出对话框,只剩下一个小例:用鼠标将整个结果复制到剪贴板变得不那么方便了。现在,可以从上下文菜单中完成此操作。







回想一下,此操作将复制整个结果或表。而按Ctrl / Cmd + C键

复制操作仅复制的选择。



MongoDB的过滤改进



ObjectIdISODate外,您现在还可以按UUIDNumberDecimalNumberLong进行过滤

BinData另外,如果剪贴板中的UUID / ObjectId / ISODate值合适 DataGrip将提供使用它进行过滤的功能。







我们还在过滤条件中添加了正则表达式,这样您就不会在关系数据库中错过太多

LIKE过滤器。







SQL编辑器



带有检查



新窗口小部件编辑器的右侧出现了一个小面板-它会告诉您脚本中有多少错误以及可疑位置有多少。从那里您可以浏览或选择要突出显示的内容,而不要突出显示的内容。F2键盘快捷键仍然适用。







重命名的建议



这在我们的许多IDE中都出现过:如果您未使用内置重构来重命名,而是在代码中更改了名称,系统将提示您进行重构和重命名以及所有使用。例如,这是使用别名的方法:







JOIN完成变得更好



以前,为了提供完整的JOIN条件,我们必须键入此关键字。现在,我们一输入您就知道需要什么'J'







如果以这种方式设置表键,我们还学会了提供双重条件。







更新数据库信息



如果DataGrip对查询中的对象一无所知,它将通知您。有时,如果您只是密封自己,就会发生这种情况。也可能是文件与错误的数据源相关联。发生此类事件的另一个原因是该对象已经出现,但是DataGrip尚未从数据库接收到有关该对象的信息。为此,如果对象未知,我们添加了从编辑器开始更新数据库结构的功能。







分配变量



以前,此重构不适用于所有数据库,现在可在SQL Server,Db2,Exasol,HSQL,RedshiftSybase中使用







Google BigQuery突出显示



添加了新的方言:Google BigQuery。到目前为止,这还不是完整的数据库支持,而仅是正确的代码突出显示。因此,您无需选择代码来运行查询,我们自己将确定要运行的内容。







突出显示TextMate



与其他IDE一样,DataGrip现在可以使用TextMate插件突出显示代码。如果您使用Python,lua和javascript编写脚本,则可能会很有用。完整的语言列表可在设置/首选项|编辑器TextMate捆绑包







作为<Generic>方言的SQL 2016



如果您使用我们不支持的数据库,则会使用< Generic >方言对查询进行解析和突出显示。以前是SQL 92,现在是SQL2016。最重要的是,现在我们可以正确地使用WITH块处理查询,它们不仅可以正确突出显示,而且还可以在不突出显示代码的情况下运行它们。







格式化中对象名称的大小写



在格式化设置中,数据库对象名称有三个设置-大写小写不变。但是事实证明,还有第四种情况:用户想使用在脚本中创建对象时使用的情况。我们对此表示支持。







在示例中,Actor表是使用第一个大写字母创建的,在使用中,我们将表名转换为相同的大小写。







我们仅在进行格式化的同一文件中查找创建脚本。如果希望格式化程序在相邻文件中找到对象声明,请从您的文件中创建基于DDL的数据源



选择中的多个托架



现在,您可以选择一个代码片段,并在其每一行中插入一个插入符号。为此,请使用“将Carets添加到所选行的末尾”操作或键盘快捷键Shift + Alt + G







数据库浏览器



树中的所有基础和方案



默认情况下,我们仅在树中显示您自己选择的那些基础和方案。该树不是惰性的,有关对象的所有元信息都用于IDE的进一步工作。因此,我们仅下载所需的内容,以免意外挂在庞大的基础上。



但是,许多工具习惯于始终显示所有对象,而对我们的概念不熟悉的人可能会忽略基础和图表。因此,我们进行了Show All Namespaces设置启用该设置后,即使未加载有关其对象的信息,所有数据库和方案也将显示在树中。此类方案和基础以灰色标记。







创建视图的界面



我们通常说编辑器中的代码生成功能(Alt + InsCmd + N)满足了开发人员的许多对象创建需求,但有时仍然不太方便。因此,我们开始添加用于创建对象的接口:在新版本中,您可以创建视图。







“文件”面板中的脚本文件



如果创建了基于DDL的数据源,则这些文件将自动转到“

文件”面板因此,方便您查看和编辑它们。







简单的Oracle



数据库链接现在,数据库链接显示在资源管理器中,并且使用它们的查询已正确突出显示。







一般



选项卡名称不再冗长



您经常抱怨选项卡越来越不受控制







从现在开始:



  • Database | General | Always show qualified names for database objects , , .
  • 20 , .
  • , .
  • — 36 , .




MongoDB Shell支持



一个月前,我们更新了用于连接MongoDB的驱动程序以支持MongoDB Shell。这意味着新的命令和方法已经起作用,例如帮助,db.getCollectionInfos(),db.getCollectionNames(),db.collection.remove()等。关于MongoDB Shell支持的英文详细文章在这里







驱动程序设置



中的本机库现在,您可以指定驱动程序所需的本机库的路径。在某些情况下,您可能需要使用它。











* .js文件的



启动配置现在,启动配置也适用于MongoDB脚本







与Git和Github集成开箱即用



我们的调查显示,相当多的人将脚本存储在版本控制系统中,因此我们决定打包该领域中两个最受欢迎的插件。







感谢您的关注!让我们提醒您,我们在Telegram中拥有自己的频道,您可以其中提问和分享经验。但是,如果您发现错误,最好立即写给跟踪器,以免丢失。好吧,这里当然也要写评论:)就



这样!



DataGrip团队



All Articles