我能够连接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不使用我的配置中指定的角色并想使用我的个人登录?无论我作为角色使用什么,仍然会遇到同样的错误。
注意:如果我将系统用户名添加为角色,则可以使用,但我希望避免这种情况。
答案 0 :(得分:1)
添加LOGIN角色属性可解决问题:
ALTER ROLE sample LOGIN
文件说明:
只有具有LOGIN属性的角色才能用作初始值 数据库连接的角色名称
但是,我可以在CLI中连接并执行我想要的操作,因为我可以在IntelliJ中“连接”但不执行查询,没有此属性。欢迎提供有关此行为的更多详细信息。