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

最后连接成功。

相关推荐
starrocks_stella36 分钟前
EMR Serverless StarRocks Object Table:用 SQL 连接 OSS 文件与多模态 AI
数据库
这个DBA有点耶1 小时前
以为自增ID只是有空洞?聊聊双主架构下无声的“数据覆盖”
数据库·mysql·dba
钱栈up2 小时前
内网全断,怎么核实高炉和烧结系统的数据库对接信息
数据库
weavecodes2 小时前
双层缓存与权限实时生效:织码在线教育系统的 Caffeine + Redis 设计
数据库
bksczm2 小时前
InnoDB 页结构详解:页类型、页头页尾、数据行与页目录
数据库·mysql
bksczm3 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
字节跳动开源3 小时前
OpenViking连接业务系统,LLM Wiki一键编译
数据库·开源
进击的荆棘4 小时前
MySQL——数据库基础
数据库·mysql
Decay__4 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
FungLeo5 小时前
成为全栈·基础补充·数据库索引:为什么加了索引还是慢
mysql·postgresql·sqlite·sql优化·数据库索引·成为全栈