无法在 Database Explorer 中找到数据库对象
如果您在架构级别以下看不到对象、无法发现对象的更改、遇到表损坏或其他可视化问题,请收集诊断信息并尝试故障排除步骤来解决问题。
收集诊断信息
为了分析内省过程并诊断可能的问题,DataGrip 可以生成包含以下信息的三个文件:
dataSource.txt :数据源。
introspector.txt :用于从数据库加载元数据的模块。
model.xml :数据库模型的一部分。
当反射功能运行不正常时,这些信息会有所帮助。
右键点击数据源并导航到 。
DataGrip 将生成包含内省器诊断信息的三个文件。

单击 已收集诊断信息 通知消息中的链接以导航到生成文件的目录。

以下截图显示了这三个文件的示例输出。
dataSource.txt

introspector.txt

model.xml

要报告问题,您可以使用 “在哪里报告问题”部分中描述的任何选项。 但我们建议使用 JetBrains 支持中心。
在 JetBrains 支持中心提交请求
通过以下任一方式打开请求表单:
点击 。
请求表单将包含有关您的产品和操作系统的预填字段。
转到 提交请求 页面。
填写 提交请求 表单。
如果可能,请附上一些故障排除材料。
点击 提交。
执行故障排除步骤
步骤 1。 更新数据库状态
如果有人更改了远程数据库数据或视图,本地数据库视图可能会与数据库的实际状态不同。
要自动同步数据库状态,请在 数据库资源管理器 ( )中,单击 数据源属性 按钮
并选择您要更改的数据源。 在 选项 选项卡上,选中 自动同步 复选框。
如果 自动同步 复选框被清除,则 数据库资源管理器 ( )中的数据源视图仅在您单击 刷新 图标
或按下 Ctrl+F5 时与数据库的实际状态同步。

步骤 2。 验证是否选择了必要的模式
当您创建数据源时,数据源会在未选择任何模式的情况下创建。 您需要选择计划使用的架构。

若要选择模式,请执行以下操作之一:
在 数据库资源管理器 中,右键单击数据源并导航到 。 选择或清除 您 希望显示或隐藏的模式复选框。 按下 Enter。
点击数据源名称旁边的 M 中的 N 链接。 在数据库和架构选择窗口中,选择或清除您希望显示或隐藏的架构复选框。 按下 Enter。

默认架构 或 默认数据库 是与数据源连接时当前的架构或数据库。 当前模式是会话中当前的模式。 您可以使用 SET CURRENT_SCHEMA 更改当前 schema。 默认模式取决于数据库设置和您在 JDBC URL 中设置的数据源设置。
您可以在数据源的连接设置中更改此默认值。 要更改默认值,请单击 数据源属性 图标 ,位于 数据库资源管理器 ( )中。 从数据源列表中选择您的数据源。 在 数据库 字段中,输入您希望用作默认值的架构或数据库的名称。

步骤 3。 请确认树筛选已关闭
如果对象类型的项目被从视图中过滤掉,这些对象将在 数据库资源管理器 中隐藏。
为了确保数据库对象未从视图中过滤掉,请执行以下操作:
在 数据库资源管理器 工具栏中,单击
查看选项。
选择
过滤器。
导航到数据库对象类型,并确保复选框已勾选。
过滤器图标角落的绿色点表示过滤器已开启,并且一些对象已被过滤。
除视图和表外,所有内容均被过滤掉

没有任何过滤

步骤 4。 强制刷新架构信息
强制刷新 操作会清除缓存中的数据源信息,并从头开始重新加载。
在 数据库资源管理器 中,右键单击一个数据源,然后选择 。

步骤 5。 清除并同步架构缓存
清除 DataGrip 架构缓存(右键单击架构并选择 )。 同步视图(请参见 步骤 1。 同步数据库状态)。
切换到基于 JDBC 的 introspector
请将此步骤视为临时解决方案。 如果您无法在 数据库资源管理器 中看到对象,可能存在一个错误。 收集故障排除材料并 将其发送给我们的支持团队。
临时启用基于 JDBC 元数据的内省
通过以下任一方式打开数据源属性:
请导航至 。
在 数据库资源管理器 (⌘ 1 )工具栏上,单击
数据源。
请按 Ctrl+Alt+Shift+S.

在 数据源 选项卡上,选择您要修改的数据源。
打开 高级 选项卡。
从 专家选项 列表中,选择 使用JDBC 元数据内省(M) 复选框。
将视图同步(请参阅 步骤 1。 同步数据库状态)。