在数据库工具窗口中找不到数据库对象
最后修改时间:2023 年 9 月 20 日如果您在架构级别以下看不到任何对象、找不到对象中的更改、遇到损坏的表或任何其他可视化问题,请尝试以下步骤来解决问题。
笔记
如果步骤 1、2 和 3 未能解决您的问题,请通过创建Youtrack票证将您的情况告知 JetBrains。创建票证后,请尝试步骤 4 和 5 作为解决方法。
步骤1.刷新数据库状态
如果有人更改了远程数据库数据或视图,则数据库的本地视图可能与数据库的实际状态不同。
要自动同步数据库状态,请在 数据库工具窗口(视图 | 工具窗口 | 数据库)中,单击数据源属性按钮并选择要更改的数据源。在“选项”选项卡上,选中“自动同步”复选框。
如果清除自动同步复选框,则仅当您单击刷新图标或按时,数据库工具窗口(视图 | 工具窗口 | 数据库)中的数据源视图 才会与数据库的实际状态同步。CtrlF5
步骤 2. 验证是否选择了必要的架构
笔记
创建数据源时,创建数据源时未选择任何架构。您需要选择您计划使用的模式。
要选择架构,请执行以下操作之一:
在 数据库工具窗口(“视图”|“工具窗口”| “数据库”)中,右键单击数据源并导航至“工具”|“数据库”。管理显示的架构...。选择或清除要启用或禁用的模式的复选框。按。Enter
单击数据源名称附近的N of M链接。在数据库和架构选择窗口中,选择或清除要启用或禁用的数据库和架构的复选框。按。Enter
默认架构或默认数据库是连接到数据源时当前的架构或数据库。当前模式是会话中当前的模式。您可以使用 更改当前架构SET CURRENT_SCHEMA
。默认架构取决于您在 JDBC URL 中设置的数据库设置和数据源设置。
您可以在数据源的连接设置中更改此默认值。要更改默认值,请单击数据库工具窗口(视图 | 工具窗口 | 数据库)中的 数据源属性图标。在数据源列表中,选择您的数据源。在“数据库”字段中,键入要用作默认值的架构或数据库的名称。
步骤3.强制刷新架构信息
强制刷新操作会清除缓存中的数据源信息并从头开始重新加载。
在 数据库工具窗口(视图|工具窗口| 数据库)中,右键单击数据源并选择诊断|数据库。强制刷新。
步骤 4. 清除并同步架构缓存
清除 IntelliJ IDEA 架构缓存(右键单击数据源并选择Diagnostics | Forget This Schema Cache)。同步视图(参见步骤1.同步数据库状态)。
使用诊断工具收集信息
为了分析内省并诊断可能的问题,IntelliJ IDEA 可以生成三个文件,其中包含以下信息:
dataSource.txt:数据源。
introspector.txt:用于从数据库加载元数据的模块。
model.xml:数据库模型的一部分。
当内省工作不正确时,此信息可能会有所帮助。例如,当您看到过时的内容或没有看到新的对象时。
运行内省分析
右键单击数据源并导航至诊断 | 准备 Introspector 诊断。
在文件浏览器窗口中或通过单击通知消息中的位置链接找到三个生成的文件。
与支持团队共享生成的文件。
以下屏幕截图显示了这三个文件的示例输出。
切换到基于 JDBC 的内省器
警告
当 JetBrains 支持团队要求时,请谨慎切换到基于 JDBC 的内省器。此步骤可能会导致代码生成出现问题,因为某些对象和属性变得不可用或返回错误值。
将此步骤视为临时解决方法。如果您在数据库工具窗口中看不到对象 ,则可能存在错误。收集故障排除材料并将其发送给我们的支持团队。
打开数据源属性。您可以使用以下选项之一打开数据源属性:
在 数据库工具窗口(视图|工具窗口| 数据库)中,单击数据源属性图标。
按。CtrlAltShift0S
在“数据源”选项卡上,选择要修改的数据源。
打开“高级”选项卡。
从专家选项列表中,选择使用 JDBC 元数据进行内省复选框。
同步视图(请参阅步骤 1. 同步数据库状态)。
感谢您的反馈意见!