报错内容:
ERROR: column"datlastsysoid" does not existLINE 1: SELECT DISTINCT datlastsysoid FROM pg_database
这个错误表明 Navicat 正在尝试查询 PostgreSQL 的 pg_database
表中的 datlastsysoid
列,但该列在您当前版本的 PostgreSQL 中不存在。
原因分析
-
Navicat 版本过旧:较旧版本的 Navicat 可能使用了不兼容的 SQL 查询,而
datlastsysoid
是 PostgreSQL 旧版本(如 9.6 或更早)的字段,但在较新版本(如 PostgreSQL 10+)中已被移除。 -
PostgreSQL 版本较新:如果您使用的是 PostgreSQL 10 或更高版本,
datlastsysoid
已被移除,但 Navicat 仍尝试查询它。
解决方法
1. 升级 Navicat(推荐)
-
下载并安装最新版本的 Navicat(如 Navicat 16+),确保兼容您的 PostgreSQL 版本。
2. 降级 PostgreSQL(不推荐)
如果必须使用旧版 Navicat,可以降级 PostgreSQL 到 9.6 或更早版本(不推荐,因为旧版本可能缺少安全更新)。
平台声明:以上文章转载于《CSDN》,文章全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,仅作参考。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_61990535/article/details/147085009