Amazon redshift Datagrip代码错误突出显示行为异常,但仅在1 DB内

Amazon redshift Datagrip代码错误突出显示行为异常,但仅在1 DB内,amazon-redshift,datagrip,Amazon Redshift,Datagrip,我正在使用DataGrip处理一个红移集群,其中包含一组数据库,错误突出显示似乎有点奇怪。假设我在同一集群上的数据库dev中有schema\u 1.表a,数据库test中有schema\u 2.表b。如果我连接到dev并编写查询: select*from schema_2.table_bschema.table引用突出显示(正确)为范围外错误 但是,如果我连接到数据库test并编写查询: select*from schema_1.table_a高亮显示时没有错误,DataGrip提供了自动完成引

我正在使用DataGrip处理一个红移集群,其中包含一组数据库,错误突出显示似乎有点奇怪。假设我在同一集群上的数据库
dev
中有
schema\u 1.表a
,数据库
test
中有
schema\u 2.表b
。如果我连接到
dev
并编写查询:

select*from schema_2.table_b
schema.table引用突出显示(正确)为范围外错误

但是,如果我连接到数据库
test
并编写查询:

select*from schema_1.table_a
高亮显示时没有错误,DataGrip提供了自动完成引用的功能。在运行时,查询不出所料地抛出错误,因为
test
不包含该模式或表

我觉得这特别奇怪,因为它只影响一个数据库连接。扩展此示例,
test
的行为异常,但
prod
scratch
等都按预期进行,突出显示了类似的范围外错误

是否存在我意外更改的某些数据库作用域设置?当我将代码投入生产时,试图调试代码让我发疯


删除红移连接并创建新连接不会影响行为;也许这与postgres/Redshift有关?

目前DataGrip在控制台中执行更广泛的对象名称查找。 它将非限定名称解析为在数据源设置中配置的数据库/架构和在控制台中连接的数据库/架构

原因很简单:我们希望即使在切换模式时也突出显示已编写的默认模式的查询(假设所有代码同时变为黄色)。 但它似乎不适合PG数据库


我们想让它可配置。请观看

您能分享一下连接设置的屏幕截图吗?哪个数据库在“数据库”字段中?谢谢@moscas!因此,集群中有一些数据库:-
遗留的
存在上述问题-
开发
测试
产品
刮擦
,还有一些其他数据库没有。在db字段中使用
scratch
设置连接-其他所有内容默认为内置红移模板(与其他红移项目设置和正常运行相同)。值得一提的是,这也是与特定用户隔离的。如果以root用户身份登录到同一集群,则问题会消失,因为
遗留连接的行为与其他连接相同。为什么不使用
show search\u path
动态检索,正如我所说,我们确实使用它,但也可以使用默认设置在模式切换后保持高亮显示感谢您的洞察力@kassak感谢您的帮助!几点考虑:1。在“数据库源设置”中更改默认数据库,甚至为同一用户设置新数据源,似乎不会影响此问题。目前(扩展上面的示例),源设置被设置为
scratch
,我连接到
legacy
,我从
src
dev
数据库获得建议。2.如上所述,这仅适用于单个用户-在使用根用户的同一集群中,建议仍然限于控制台连接到的数据库,正如预期的那样。@jptk设置中的“SQL解析范围”中是否有任何内容?@kassak否,根本没有任何内容-只是默认行为