解决Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错的问题

解决Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错的问题

在这里插入图片描述

column “datlastsysoid“ does not exist

 Line1:SELECT DISTINCT datalastsysoid FROM pg_database  

问题分析

    Postgres 15 从pg_database表中删除了 datlastsysoid 字段引发此错误。

解决方案

  • 解决方法1:升级navicat

  • 解决方法2:降级pgsql

  • 解决方法3:修改dll

    1. 打开 Navicat 安装目录,找到libcc.dll文件

    2. 备份libcc.dll文件,将其复制并粘贴为“libcc.dll.bak”或任何其他名称

    3. 在任何十六进制编辑器中打开此文件,如果需要,您可以使用在线工具,例如 https://hexed.it。

    4. 在文件中搜索“SELECT DISTINCT datlastsysoid”,并将其替换为“SELECT DISTINCT dattablespace”

  • 修改

在这里插入图片描述

  1. 将文件保存在原始位置。如果遇到任何安全问题,请将其另存为“.txt”文件,然后还原备份文件

  2. 重启navicat,可以发现,无论老和新版本的pgsql,都可以正常访问了

如果遇到PG见表消失问题

官网:https://www.navicat.com.cn/products

下载最新版本

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/sinat_39620217/article/details/142592188