GoLand 2025.2 Help

元数据与内省

元数据 包含有关数据库对象、结构、数据库对象源代码等方面的信息。 GoLand 使用这些信息在 数据库 工具窗口中显示对象、展示其 DDL、在代码补全时提供建议,并为其他编码辅助、导航与搜索功能提供支持。

在 GoLand 中,有两种方式可获取数据库的元数据:小型目录与 内省

小型目录

对于系统架构的小型目录,系统架构的元数据已预先内省,并由 IDE 提供。 在不连接数据库且未内省系统架构的情况下,允许编写使用系统元数据的脚本。

内省

内省 是加载数据库元数据的过程。 执行内省时,会检查数据源中的结构信息,以检测表、列、例程及其他数据库对象及其属性。

仅支持对具有数据结构与目录的数据库进行内省。

默认情况下,仅内省选定在 数据库 工具窗口中显示的架构与数据库。

您可以通过在 数据库 工具窗口中选择,或在 数据源和驱动程序 对话框(Shift+Enter )中编辑数据源属性的方式,选择要进行内省并显示的架构与数据库。

选择用于内省的架构与数据库

  • 数据库 工具窗口中:

    1. 要打开 数据库 工具窗口,请从主菜单中选择 视图(V) | 工具窗口 | 数据库。 或按 ⌘ 1 键。

    2. 数据库 工具窗口中,点击数据源、数据库或架构名称旁的 第 N 项,共 M 项 按钮。

      在 Database 工具窗口中选择架构或数据库
    3. 在架构选择弹出窗口中,选择数据库或架构并按下 Enter

  • 数据源和驱动程序 对话框中:

    1. 要打开该对话框,请在 数据库 工具窗口中右键点击数据源,然后选择 属性图标属性。 或者,点击工具栏上的 设置按钮数据源属性 图标。

    2. 架构 标签页的 数据源和驱动程序 对话框中,选择数据库或架构。

      在数据源属性中选择架构或数据库

      请注意, 对象过滤器 字段仅定义哪些对象在 数据库 工具窗口中可见,不影响内省范围。

    3. 应用更改并关闭对话框。

一旦必要的数据库与架构已完成内省,IDE 即可在脚本中将数据库对象解析到正确的上下文。 以下示例展示了对已内省与未内省架构的数据库对象解析。

对已内省与未内省架构进行数据库对象解析
  1. 尚未进行内省的 MySQL 数据源。

  2. PostgreSQL 数据源中唯一已内省的 guest 数据库。 该数据库包含四个架构,仅有 public 架构已被内省。

  3. 在 查询控制台 中的数据库对象解析:已成功解析已内省的 guest 架构,未能解析未内省的 tests 架构。

对于每个数据源,您还可以选择加载数据库对象源代码的架构类别。

为不同架构加载数据库对象的源代码

  1. 要选择加载数据库对象源代码的架构,请打开 数据源和驱动程序 对话框(Shift+Enter ),然后选择数据源。

  2. 选项 标签页内,前往 加载以下项的源代码 设置,选择架构类别。

  3. 应用更改并关闭对话框。

选择加载数据库对象源代码的架构类别

如处理所有对象,数据库用户可能会经历较长的内省时间,而这通常对日常工作与编程辅助而言并非必要。 为减少被内省的对象数量,GoLand 提供了额外的 内省类型 ,并在部分受支持的数据库中实现了三个 内省级别

内省类型

内省类型定义了在内省期间将刷新哪些数据库对象。 某些数据库支持将内省范围缩小至特定对象。 在 GoLand 中,根据您的数据库,可用的内省类型包括: 完全内省片段内省增量内省

完全内省

数据库 工具窗口(架构选择器 )或 数据源和驱动程序 对话框(架构 选项卡 )中选定用于内省的架构与数据库将被刷新。

增量内省

仅刷新在上次内省后于数据库中发生变更的数据库对象。

片段内省
  • 当您调用 刷新 操作时,仅刷新 数据库 工具窗口中选定的数据库对象。

    当您执行刷新操作时,在 Database 工具窗口中选择的数据库对象将被刷新
  • 当您在 查询控制台 中运行语句时,会应用 智能刷新机制。 GoLand 会分析该语句可能会修改哪些对象,仅刷新该特定对象集合。

对于某些受支持的数据库,可通过 内省级别 执行内省操作。

按级别进行内省

内省级别定义了检索数据库对象时的详细程度:

  • 级别 1:仅加载数据库对象名称。

  • 级别 2:除数据库对象的源代码外加载全部内容。

  • 级别 3:加载全部内容。

有关内省级别的详细信息,请参阅 内省级别 主题。

Database 工具窗口中的内省级别

如果某个数据库不支持特定类型的内省,GoLand 将执行完全内省。 以下数据库支持特定类型的内省和内省级别:

数据库

增量内省

片段内省

内省级别

Azure SQL 数据库

-

Greenplum

-

-

MariaDB

Microsoft SQL Server

MySQL

Oracle

PostgreSQL

最后修改日期: 2025年 9月 26日