DataGrip 2022.2 现已发布! 这是 2022 年的第二次重大更新,其中包含各种增强功能。 让我们看看都有些什么!
我们实现了选择多个 CSV 文件并将其一次导入的功能,以此增强文件导入过程。
DataGrip 需要了解对象的含义才能解析 SQL 脚本中的数据库对象。 只有这样,IDE 才可以提供正确的代码补全并将对象的用法视为链接。
通常,解析上下文应该与运行上下文匹配,但这对于 DataGrip 来说并不容易。 因此,直到最近还有多个解析相关问题。 以下是可能出现的情况:
这些问题的原因是,对于每个控制台或本地文件,DataGrip 都将其对象解析为右上角下拉菜单中选择的上下文和默认数据库或架构(或 SQL Resolution scopes(SQL 解析范围)设置中的条目)。
处理包含切换上下文的 USE
或 SET SEARCH PATH
语句的脚本时这没问题。 但是,IDE 也需要知道文件开头解析到哪里。 因此,它将默认数据库或架构(或 SQL Resolution scopes(SQL 解析范围)设置中的条目)视为文件开头最合适的上下文。
也就是说,如果文件中没有 USE
或 SET SEARCH PATH
语句,则 DataGrip 不应试图将文件的开头解析为上下文之外的位置。 为了应对这种情况,我们引入了 Playground(演练场)和 Script(脚本)这两种解析模式,让 DataGrip 知道要遵循哪种方式。
在 Playground(演练场)模式下,DataGrip 将所有对象解析为上下文,即架构选择器、解析范围或默认数据库中的值。 如果文件只是一组未连接的查询,彼此独立且没有特定顺序,则效果最佳。 Playground(演练场)模式现在是查询控制台的默认设置。
在 Script(脚本)模式下,文件的开头被解析为上下文,但脚本中的所有 USE
语句都会更改解析的上下文,因为它们是脚本顺序逻辑的一部分。 这适合查询具有顺序逻辑且应该作为单个脚本运行的情况。 Script(脚本)模式现在是本地文件的默认设置。
在模式之间切换很容易。 使用工具栏上的下拉菜单即可,如屏幕截图所示。
新的 Modify(修改)UI(其基本版本在 2022.1 版本中引入)现已成为默认选项。 从 DataGrip 2022.2 开始,可以使用新 UI 添加和编辑表的所有子对象。
在此发布周期内,上下文菜单将继续提供旧 UI。
排序规则和字符集现在通过表的 DDL 生成。
此前,所有数据库功能相关操作都存储在按键映射的四个不同位置。 这种几乎没有逻辑的结构是 IDE 的历史遗留问题。
为了帮助您查看所有可用操作,我们重新安排了结构并将所有操作置于数据库上级组之下的组中。
You can now set file scopes as sources for DDL data sources. 这让您可以轻松筛选 DDL 数据源的文件夹。 例如,您可以排除子文件夹。
我们为 macOS 用户引入了一项功能,利用此功能可以将所有打开的项目窗口合并成一个,将其变成标签页。 此操作位于 Window(窗口)菜单中。
当密码即将过期时,Oracle 和 Vertica 数据库可以提供警告。 DataGrip 现在会检索此信息并在 Test Connection(测试连接)激活后显示信息。
我们向基本支持列表添加了 3 个新数据库:DuckDB、Mimer SQL 和 Apache Ignite。
SET ROWCOUNT
在 Azure 查询之前执行以限制页面大小。 ALTER TABLE
支持 MODIFY ORDER BY
。 CHANGETABLE
。 END CONVERSATION
。 PRAGMA_TABLE_INFO
和 PRAGMA_TABLE_XINFO
表已正确解析。 CTE
与 INSERT INTO
结合使用时,现在可以正确解析列。