无法在 Database 工具窗口中找到数据库对象
如果在架构级别看不到对象、找不到对象的变更、遇到表损坏或其他可视化问题,请尝试以下步骤来解决问题。
第 1 步. 更新数据库状态
如果有人更改了远程数据库的数据或视图,数据库的本地视图可能与数据库的实际状态不同。
要自动同步数据库状态,请在 数据库 工具窗口( )中,点击 数据源属性 按钮
,并选择您想要更改的数据源。 在 选项 选项卡上,选中 自动同步 复选框。
如果清除了 自动同步 复选框,则只有在点击 刷新 图标
或按下 Ctrl+F5 时, 数据库 工具窗口( )中的数据源视图才会与数据库的实际状态同步。

第 2 步. 验证是否选择了必要的模式
当您创建数据源时,数据源会在未选择任何模式的情况下创建。 您需要选择计划使用的架构。
若要选择模式,请执行以下操作之一:
在 数据库 工具窗口( )中,右键点击数据源并导航到 。 选择或取消选中您希望显示或隐藏的架构复选框。 按下 Enter。
请点击数据源名称附近的 第 N 个,共 M 个 链接。 在数据库和模式选择窗口中,选中或取消您想要显示或隐藏的模式的复选框。 按下 Enter。

默认架构 或 默认数据库 是与数据源连接时当前的架构或数据库。 当前模式是会话中当前的模式。 您可以使用 SET CURRENT_SCHEMA 更改当前 schema。 默认模式取决于数据库设置和您在 JDBC URL 中设置的数据源设置。
您可以在数据源的连接设置中更改此默认值。 要更改默认设置,请点击 数据源属性 图标 ,位于 数据库 工具窗口( )中。 从数据源列表中选择您的数据源。 在 数据库 字段中,输入您希望用作默认值的架构或数据库的名称。
第 3 步. 请确认树筛选已关闭
如果某种对象类型的项目被从视图中过滤掉,这些对象将在 数据库 工具窗口中被隐藏。
为了确保数据库对象未从视图中过滤掉,请执行以下操作:
在 数据库 工具窗口的工具栏中,点击
视图选项。
选择
筛选。
导航到数据库对象类型,并确保复选框已勾选。
过滤器图标角落的绿色点表示过滤器已开启并且一些对象已被过滤掉。


第 4 步. 强制刷新模式信息
强制刷新 操作将从缓存中清除数据源信息并重新加载。
在 数据库 工具窗口( )中,右键点击数据源并选择 。

第 5 步. 清除并同步架构缓存
清除 IntelliJ IDEA 模式缓存(右键点击数据源并选择 )。 同步视图(请参见 步骤 1。 同步数据库状态)。
使用诊断工具收集信息
为了分析内省过程并诊断可能的问题,IntelliJ IDEA 可以生成包含以下信息的三个文件:
dataSource.txt :数据源。
introspector.txt :用于从数据库加载元数据的模块。
model.xml :数据库模型的一部分。
此信息在自省工作不正常时可能有帮助。 例如,当您看到过时的内容或看不到新的对象时。
右键点击数据源并导航到 。
IntelliJ IDEA 将生成包含内省器诊断信息的三个文件。

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

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

introspector.txt

model.xml

切换到基于 JDBC 的 introspector
请将此步骤视为临时解决方案。 如果您无法在 数据库 工具窗口中看到对象,可能是存在一个错误。 收集故障排除材料并 将其发送给我们的支持团队。
临时启用基于 JDBC 元数据的内省
打开数据源属性。 您可以通过以下选项之一打开数据源属性:
在 数据库 工具窗口( )中,点击 数据源属性 图标
。
按下 Ctrl+Alt+Shift+S。
在 数据源 选项卡上,选择您要修改的数据源。
打开 高级 选项卡。
从 专家选项 列表中,选择 使用JDBC 元数据内省(M) 复选框。
将视图同步(请参阅 步骤 1。 同步数据库状态)。