PostgreSQL + IntelliJ:致命:角色xxx不存在

PostgreSQL + IntelliJ : FATAL : role xxx doesn't exist

我能够连接psql并做我想要的,而不是IntelliJ。

1
2
PostgreSQL version : postgres (PostgreSQL) 9.6.1
IntelliJ version : 2016.3.1

IntelliJ配置:

1
2
3
URL : jdbc:postgresql://localhost:5432/sample
USER : sample
Pwd : sample

测试连接:成功

所以,我连接(出现红色方块),然后尝试一个简单的查询:

1
SELECT 1;

我收到了错误:

1
FATAL : ROLE 'xxx' doesn't exist`

为什么IntelliJ不使用我的配置中指定的角色并想使用我的个人登录? 无论我用什么作为角色,仍然会得到同样的错误。

注意:如果我将系统用户名添加为角色,则可以使用,但我更愿意避免这种情况。


添加LOGIN角色属性可解决问题:

1
ALTER ROLE sample LOGIN

文件说明:

Only roles that have the LOGIN attribute can be used as the initial
role name for a database connection

但是,我可以在CLI中连接并执行我想要的操作,因为我可以在IntelliJ中"连接"但不执行查询,没有此属性。 欢迎提供有关此行为的更多详情。