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

最后连接成功。

相关推荐
先吃饱再说18 小时前
存储的进化:从 MySQL 到浏览器缓存,数据到底住在哪?
数据库
Nturmoils18 小时前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
Databend20 小时前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
这个DBA有点耶20 小时前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung1 天前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql
parade岁月1 天前
MySQL JOIN解析:朴实无华但食之有味
数据库·后端
用户3169353811831 天前
MySQL服务无法启动问题解决全记录
数据库
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
倔强的石头_2 天前
《Kingbase护城河》——猎捕慢查询:执行计划的微观解析与索引调优实战
数据库
SelectDB2 天前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python