Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错

这个报错的原因是版本不兼容 :使用的Navicat版本太旧,但连接的PostgreSQL版本太新。PostgreSQL从版本15 开始,已经从系统表 pg_database 中彻底移除了 datlastsysoid 这个字段。而你正在使用的旧版Navicat(通常是15.0.29之前或16.1之前的版本)在连接时,依然会尝试查询这个已被删除的字段,因此导致报错。

最简单的解决方法就是修改Navicat 安装目录的libcc.dll文件。

1、找到Navicat 安装目录的libcc.dll文件,然后备份。

2、使用十六进制编辑器或者在线工具,例如 https://hexed.it 打开此文件。

3、在文件中搜索"SELECT DISTINCT datlastsysoid",并将其修改为"SELECT DISTINCT dattablespace"。

最后连接成功。

相关推荐
烟雨归来7 小时前
RAC数据库OS进程消失,GV$SESSION长期残留KILLED僵尸会话处理
数据库·oracle
小龙报7 小时前
【优选算法】1. 水果成蓝 2.找到字符串中所有字母的异位词
java·c语言·数据结构·数据库·c++·redis·算法
宇宙第一小趴菜8 小时前
六、Oracle 目录结构
数据库·oracle
IvorySQL8 小时前
PG 日报|修复高 IO 并发场景,解决预读机制耗尽本地缓冲区缺陷
数据库·人工智能·sql·postgresql·区块链
TiDB 社区干货传送门8 小时前
TiDB 8.5.7 发版|六项实用功能上线
数据库·mysql·tidb
在繁华处8 小时前
MySQL 学习笔记 01:从概念到约束,搭好库表骨架
数据库·oracle
三言老师9 小时前
CentOS7.9:Redis 数据持久化结构化实战教程
数据库·redis·缓存
鸽芷咕9 小时前
KingbaseES 优化器底层逻辑:等价变换如何改写 SQL,条件调度如何驱动运行时
数据库
Vect__9 小时前
MySQL 内连接和外连接:从匹配关系到业务查询
数据库·mysql
qq_150841999 小时前
SQL的insert和update二合一指令
java·数据库·sql