navicat连接postgresql报错

navicat连接postgresql报错

 

navicat连接postgresql报错_第1张图片

navicat连接postgresql报错

navicat连接postgresql报错_第2张图片

 

现象

有小伙伴告诉我

安装了新的postgresql

使用navicat连接,报错

ERROR: column "datlastsysoid" does not existLINE 1: SELECT DISTINCT datlastsysoid FROM pg database

column “datlastsysoid“ does not exist 
Line1:SELECT DISTINCT datalastsysoid FROM pg_database

这主要是pgsql 15版本以后

有些系统表的列名改了

pg_database表里的这一个列被删除了导致的

navicat连接postgresql报错_第3张图片

解决方法1:升级navicat

将navicat升级到16.2以上版本

可以解决这个问题

navicat连接postgresql报错_第4张图片

解决方法2:降级pgsql

老版本仍然可用

终极解决方法3:修改dll

找到navicat安装目录

有一个libcc.dll文件

navicat连接postgresql报错_第5张图片

1.备份这个文件

2.进入网站https://hexed.it/ 打开本地的libcc.dll 文件

3.右侧点击搜索,关键词“SELECT DISTINCT datlastsysoid”

4.找到之后,把‘datlastsysoid’这几个字,改成“dattablespace”

5.然后把文件下载回来,放回原处

navicat连接postgresql报错_第6张图片

重启navicat,可以发现

无论老和新版本的pgsql

都可以正常访问了

navicat的安装可以参考我的另一篇文章有关navicat16的

私信资源可以获取

希望大家都能解决问题

共同成长

你可能感兴趣的:(postgresql,数据库)