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中"连接"但不执行查询,没有此属性。 欢迎提供有关此行为的更多详情。