PhpStorm 2021.3 Help

在数据库树视图中找不到数据库对象

如果您在架构级别下看不到任何对象、找不到对象更改、遇到损坏的表或任何其他可视化问题,请尝试以下步骤来解决问题。

Step 1. 刷新数据库状态

如果有人更改了远程数据库数据或视图,则数据库的本地视图可能与数据库的实际状态不同。

  • 要自动同步数据库状态,在数据库工具窗口(查看 | 工具窗口 | 数据库)中,单击数据源属性按钮数据源属性按钮并选择要更改的数据源。在选项选项卡上,选中自动同步复选框。

    如果清除自动同步复选框,则只有在单击刷新图标或按时,数据库工具窗口(视图|工具窗口|数据库)中的数据源视图才会与数据库的实际状态同步。刷新按钮Ctrl+F5

    刷新数据库状态

步骤 2. 验证是否选择了必要的模式

创建数据源时,创建的数据源未选择任何架构。您需要选择计划使用的模式。

默认架构默认数据库是连接到数据源时将处于当前状态的架构或数据库。当前模式是会话中当前的模式。您可以使用 更改当前架构SET CURRENT_SCHEMA。默认架构取决于您在 JDBC URL 中设置的数据库设置和数据源设置。

您可以在数据源的连接设置中更改此默认设置。要更改默认设置,请单击数据库工具窗口(查看 | 工具窗口 | 数据库)中的数据源属性图标。在数据源列表中,选择您的数据源。在“数据库”字段中,键入要用作默认值的模式或数据库的名称。数据源属性图标

  • 要在数据库工具窗口中显示模式,请执行以下操作之一:

    • 数据库工具窗口(查看 | 工具窗口 | 数据库)中,右键单击数据源并导航到数据库工具 | 管理显示的模式。选择或清除要启用或禁用的模式的复选框。按Enter

    • 单击数据源名称附近的N of N链接。在模式选择窗口中,选中或清除要启用或禁用的模式的复选框。按Enter

    • 要隐藏所有模式,请导航到数据库工具 | 隐藏架构

    显示和隐藏模式

步骤 3. 强制刷新架构信息

强制刷新操作会从缓存中清除数据源信息,然后从头开始重新加载。

  • 数据库工具窗口(查看 | 工具窗口 | 数据库)中,右键单击数据源并选择数据库工具 | 强制刷新

    强制刷新架构信息

步骤 4. 清除和同步模式缓存

  • 清除 PhpStorm 模式缓存(右键单击数据源并选择Database Tools | Forget Cached Schemas)。同步视图(请参阅步骤 1. 同步数据库状态)。

步骤 5. 切换到基于 JDBC 的内省器

将此步骤视为临时解决方法。如果您在数据库资源管理器中看不到对象,则可能存在错误。收集故障排除材料并将其发送给我们的支持团队

使用 JDBC 元数据临时启用自省

  1. 数据库工具窗口(查看 | 工具窗口 | 数据库)中,单击数据源属性图标数据源属性图标

  2. 在“数据源”选项卡上,选择要修改的数据源。

  3. 单击Advanced选项卡并选中Introspect using JDBC metadata复选框。

  4. 同步视图(请参阅步骤 1. 同步数据库状态)。

    切换到基于 JDBC 的内省

使用诊断工具收集信息

自省是 IDE 检索有关数据库的信息的过程。此信息用于在数据库资源管理器中显示对象、显示它们的 DDL、在完成期间建议它们,以及用于代码辅助的其他功能。

有时内省会遇到问题。例如,自检数据库可能需要更长的时间,或者数据库中存在的某些对象不会显示在“数据库”工具窗口中。在这些情况下,请尝试使用以下菜单项来收集故障排除数据并将其传递给我们的支持团队。

  • 右键单击数据源并导航到Diagnostics。在以下选项之间进行选择:

    • 转储模型:生成数据库结构(数据库模型)的特定于 PhpStorm 的表示。您可以通过单击包括自动生成的内容图标来包括自动生成的内容。

    • 诊断刷新:从数据库重新加载元数据并生成一个 LOG 文件。当您认为自省很慢时,此信息可能对支持团队有所帮助。

      诊断刷新
    • Prepare Introspector Diagnostics:生成三个文件,其中包括有关数据源 ( dataSource.txt ) 的信息、用于从数据库加载元数据的模块 ( introspector.txt ) 以及数据库模型的一部分 ( model.xml ) .

      当自省工作不正确时,此信息可能会有所帮助。例如,当您看到过时的东西或看不到新对象时。

      以下屏幕截图显示了这三个文件的示例输出。

最后修改时间:2021 年 10 月 5 日