【问题标题】:intellij idea data sources doesn't see existing table in the databaseIntellij IDEA 数据源在数据库中看不到现有表
【发布时间】:2012-08-31 04:23:12
【问题描述】:

intellij idea 数据源在我的 mysql 数据库中看不到现有表,而 Netbeans 看到它。 我在数据库中创建了一个表。当我在 intellij idea 数据源中创建连接时,它会看到我的方案,我确实在“模式和表格”中选择了它,但后来我在列表中看不到它。 每个模式,但我的。当我尝试使用 netbeans 或 mysql 工作台连接到它时,就可以了。几个数据库也有同样的故事,也有 root 访问权限。任何桌子,但我的。 有什么问题?

我看到类似我的here 的问题,与视觉工作室有关,没有答案。 请提供一个好的线索

【问题讨论】:

  • IDEA 不会自动更新可用表 - 您必须在每次模式修改后通过启动“刷新”操作 (Ctrl+Alt+Y) 手动切换它。
  • 是的,我现在和以前都试过了——但没有运气。可以在想法中添加几个数据库中的方案中的任何表 - 但我自己做的那个。
  • 我什至在想法 sql 控制台中创建了新方案,标记它以查看 - 不走运! mysql 工作台看到它,但想法没有,刷新窗口中的主列表 - 不走运。但它会在数据源属性方案和表格中看到方案
  • ![Valid XHTML]("postimage.org/image/7d4vfbs2f) here ![Valid XHTML][]
  • ![数据源属性][]("postimage.org/image/by48bh8m1)

标签: database intellij-idea schema database-connection datasource


【解决方案1】:

我找到了 HSQLDB 问题的原因:有 IDEA 错误(我有 11.0 版本)。

使用相对路径(相对于 MODULE)创建 db,如下所示:

jdbc:hsqldb:file:db_file/testDBInMemory;shutdown=true;hsqldb.write_delay=‌​false;
f:\TestModule\db_file\

将其添加到数据源时,IDEA 将此路径识别为 $IDEA_HOME$/bin 文件夹的相对路径。

f:\Program Files\JetBrains\IntelliJ IDEA 11.0\bin\db_file\

所以你有两个不同的数据库。而当 JPA 首先更新时,Data Source 看不到其他更新。

解决方法: 在文件 db url 中使用绝对路径。

【讨论】:

  • +1。这就是答案,它仍然存在于 2019.1 中。很难找到的是 IntelliJ 假装实际连接到数据库。相反,它只是连接到一个不存在的文件,然后告诉你数据库是空的。
【解决方案2】:

我在 IntelliJ IDEA 15 中遇到了同样的问题。

我通过右键单击数据源 -> Properties -> Schemas -> Use legacy introspector 修复了它。

【讨论】:

  • 适用于 Idea 15.0.3 和 Postgres 9.5(尽管 IDE 表示不建议使用旧版内省)
  • 也为我工作。在标志之前,我看不到我可以访问的表中的某些列
  • 也为我工作。虽然我的路径并不完全相同。对我来说:右键单击数据源 -> 选项 -> Introspect using JDBC metadata。 Intellij 2016.2.4.
【解决方案3】:

我的答案隐藏在评论中,所以我将其发布在这里。我的症状是看到这样的错误: 无法解析表 'thetablename' 表名以红色突出显示。

以下修复都是触发 IntelliJ 刷新数据源的方法:

  • CTRL+ALT+Y 刷新数据库内容,或者
  • CTRL+F5,或
  • 点击右侧的数据库垂直选项卡,展开,右键单击每个数据库连接并选择“刷新”

感谢@ice 早些时候在评论中回答了这个问题。我基本上只是详细说明并确保这显示为答案。

【讨论】:

    猜你喜欢
    • 2012-10-09
    • 2017-06-27
    • 1970-01-01
    • 2013-07-25
    • 2021-01-07
    • 1970-01-01
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多