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

复制代码
  1 column "datlastsysoid" does not exist

  2 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"

修改

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

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

相关推荐
zhanghaha131417 分钟前
C# 系列教程_12 字符串 string 保姆级系统教程(面向新手,大量示例 + 原理讲解)
开发语言·数据库·c#
韩曙亮22 分钟前
【错误记录】安卓 adb 调试 5037 端口占用排查 ( adb 的三层结构 | 找出本机占用 5037 的进程 )
android·数据库·adb·安卓·错误记录
瑞雪兆丰年兮34 分钟前
JavaWeb-day07-MySQL(DQL&多表设计)
java·开发语言·数据库·sql·mysql·javaweb·web
lsc_blog6 小时前
年终自评别贴提交记录,把技术产出讲成变化
数据库·面试·职场和发展·跳槽·求职招聘
FungLeo8 小时前
成为全栈·基础补充·数据库迁移与事务:数据结构怎样安全演进
mysql·postgresql·sqlite·数据一致性·数据库事务·数据库迁移·成为全栈
Zan13 小时前
SQLite + SQLx 实战:为什么已经发布的数据库迁移文件,绝对不能再修改?
数据库·后端·面试
这个DBA有点耶14 小时前
数据同步的三个工程底线:DDL同步、断点续传、一致性校验——开源CDC的边界与KFS的路径
数据库·dba·代码规范
SelectDB15 小时前
列式存储为什么适合分析类负载?原理、限制与日志场景应用
数据库
数据库小学妹16 小时前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化