我在postgreSQL中遇到了这个问题,当我对任何事情进行简单查询(CRUD)时,有时候它会起作用并且几乎总是显示这条消息:
未连接到服务器或已关闭与服务器的连接。
我不知道如何解决它,它开始让我烦恼,任何人都知道如何解决它?
更新1
我一直在搜索,似乎pgadmin4问题(似乎因为它还没有100%开发),我一直在使用pgadmin3并且该错误没有显示出来。
答案 0 :(得分:4)
我遇到这种情况的原因是查询中出现语法错误。检查你的语法,然后再试一次,也许这就足够了
答案 1 :(得分:3)
此问题已修复。
升级到pgAdmin4版本2.0。 https://www.pgadmin.org/download/
答案 2 :(得分:2)
我之前有类似的问题,我使用postgre 9.6.1-1
我可以无条件地选择(例如:$product = App\Product::find(1);
foreach($product->attributeValues as $attributeValue)
{
echo $attributeValue;
echo $attributeValue->attribute;
}
),我也可以插入..但是如果我使用条件选择或编辑或删除(例如:select * from foodtable
),输出就像你的< / p>
未连接到服务器或已关闭与服务器的连接。
我尝试重新安装(卸载后删除所有剩余数据)并删除C:\ Users \ yourUserName \ AppData \ Roaming \ pgAdmin(删除pgAdmin文件夹中的所有数据) 它的作品
更新 - &GT;您的表名和字段名称必须小写
答案 3 :(得分:2)
解决方案是:
选择丢失连接的数据库。
然后在右侧选择SQL
例如,图片(shopdb)是我失去连接的数据库。
之后,PgAdmin将询问您是否要重新连接到该数据库...
点击确定
您会注意到一条消息,指出从服务器获取数据
答案 4 :(得分:1)
更改pgAdmin的版本,使用pgAdmin 3,它在Windows 10和pgAdmin4之间经常出现问题。
答案 5 :(得分:1)
只需更改列名并运行查询,它就对我有用。
我的列名是时间戳,它与数据类型冲突,因此我将时间戳更改为 _timestamp
答案 6 :(得分:0)
你能跑吗?从pgAdmin4?
提供这些sql查询的输出1) SHOW SERVER_ENCODING;
2) SHOW CLIENT_ENCODING;
您尝试运行查询的当前数据库连接的编码集是什么(右键单击数据库,单击属性&gt;定义选项卡&gt;检查编码,整理和字符类型)?
我怀疑您因编码而面临问题。
答案 7 :(得分:0)
我解决了这个问题。我按下执行按钮附近的下拉列表中的F7或Explain。然后我看到了问题的确切位置。 pgAdmin4不喜欢我的专栏名称。然后我去了问题列并重命名了它。
答案 8 :(得分:0)
我有同样的问题 但我可以创建数据库和表成功 我的版本是: window10 pro x64 9.5(X86)
更改为9.4(X86)+ pgAdmin3后没有更多错误..我在9.5创建的表可以在pgAdmin3中使用(插入数据)
答案 9 :(得分:0)
在事务中运行一连串查询时出现此错误。然后,当我分别运行它们时,它并没有断开连接。仍然不知道为什么它实际上会发生...
答案 10 :(得分:0)
当有人像我一样用谷歌搜索此帖子时,请注意。 如果您有 JSON 列,并且希望在pgAdmin中看到任何结果,请将JSON转换为VARCHAR之类,如
SELECT id, metadata::VARCHAR FROM data_table;
内容是否为NULL都没关系, JSON 不起作用。也许还有pgAdmin也无法解析其他类型或值。
注意:您仍然可以在投射后插入值并接收它们,因此问题出在JS方面(将另外一枚硬币放入“讨厌的JS”罐子中)。
答案 11 :(得分:0)
我们刚刚在独立的Windows计算机上体验了这一点。
重新安装东西并四处查看(日志,在shell中运行psql-一切都很好)之后,我们发现这是罪魁祸首是较老的Firefox。
所以-请确保您的浏览器是最新的:-)
答案 12 :(得分:0)
我的操作系统是 Windows 10。 pgAdmin 版本 - 4.5
我在执行脚本时遇到这个错误,降级到 pgAdmin 4.3 版为我解决了这个问题。
答案 13 :(得分:-1)
我正在使用pgadmin 4.6版,它是目前的最新版本。
我只能通过在内部运行查询来解决问题
DO $$ ... BEGIN ... END $$;
阻止。
万一有人还在寻找像我这样的答案。