内省级别
如果对象(表、架构、数据库等)很多,数据库用户可能会遇到较长的内省时间。 内省是获取数据库元数据的过程,例如对象名称、列的类型和源代码。 CLion 使用此信息提供代码辅助、导航和搜索功能。
对于某些数据库,系统目录相对较慢,如果用户没有访问快速目录的权限,内省会更慢。
通常,对于日常工作和代码辅助,不需要加载所有对象的源代码。 在许多情况下,拥有数据库名称就足以实现正确的代码补全和导航。 CLion 提供以下内省级别:
级别 | 手动设置的级别 | 继承的级别 | 描述 |
|---|---|---|---|
级别 1 | 所有支持对象及其签名的名称,但不包括索引列名称和私有包变量名称。 | ||
级别 2 | 除数据库对象的源代码外的所有内容。 例如,在此级别,如果您打开一个例程,您将看到其声明而不是其主体。 | ||
级别 3 | 所有内容。 |
图标表示内省级别:药丸填充得越多,级别越高。 此外,颜色也很重要:蓝色图标表示内省级别是直接设置的,灰色表示是继承的。
对于 CLion 中可用的某些数据库,IDE 支持 片段内省。 这是检索单个对象元数据的能力。 这在明确请求元数据(通常是源代码)的情况下非常有用。 例如,如果您双击一个视图,但内省级别较低,CLion 会在同一时刻请求源代码。
刷新单个对象的源代码
右键点击一个对象并选择
刷新。 或者按 Ctrl+F5。

内省级别默认值
默认情况下,CLion 会根据架构类型和对象数量自动为每个架构设置默认内省级别。 对于每个架构,内省器会计算对象数量并使用以下阈值选择内省级别,其中 N 是对象数量:
架构 | 级别 3 | 级别 2 | 级别 1 |
|---|---|---|---|
当前 | N <= 1000 | N <= 3000 | 否则 |
非当前 | 从不 | N <= 3000 | 否则 |
系统 | 从不 | N <= 100 | 否则 |
要更改默认设置,请打开 数据源和驱动程序 对话框(Shift+Enter ),导航到 ,并为您的数据源选择默认的内省级别。

更改内省级别
您可以为整个数据库或特定架构设置内省级别。 架构从数据库继承其内省级别,但您可以为每个架构单独设置级别。
对于其他数据库对象, 内省级别 上下文子菜单显示对象的当前内省级别。
默认情况下,内省级别图标是禁用的。 您可以单独启用它们:对于架构及其子项(表、视图、例程等)。
启用内省级别图标
在 数据库 工具窗口工具栏上,点击
查看选项 并选择 内省级别图标。


更改内省级别
在 数据库 工具窗口中右键点击一个对象,然后选择 内省级别 菜单。
在 内省级别 菜单中,选择您想要应用的级别。
子项继承父项设置的级别。
请注意,如果您在数据源设置中启用了 自动同步 选项,则在更改内省级别时,内省将立即运行。 有关该选项的更多信息,请参阅 数据源和驱动程序 对话框中的自动同步。