我能够连接psql并做我想要的,而不是IntelliJ.
PostgreSQL version : postgres (PostgreSQL) 9.6.1
IntelliJ version : 2016.3.1
IntelliJ配置:
URL : jdbc:postgresql://localhost:5432/sample
User : sample
Pwd : sample
测试连接:成功
所以,我连接(出现红色方块),然后尝试一个简单的查询:
select 1;
我收到了错误:
FATAL : role 'xxx' doesn't exist`
为什么IntelliJ不使用我的配置中指定的角色并想使用我的个人登录?无论我用什么作为角色,仍然会得到同样的错误.
注意:如果我将系统用户名添加为角色,则可以使用,但我更愿意避免这种情况.
最佳答案 添加LOGIN角色属性可解决问题:
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中“连接”但不执行查询,没有此属性.欢迎提供有关此行为的更多详情.