column “datlastsysoid“ does not exist Line1:SELECT DISTINCT datalastsysoid FROM pg_database

PGSQL 15 版本会连接pg数据库出现错误column “datlastsysoid“ does not exist Line1:SELECT DISTINCT datalastsysoid FROM pg_database

#column “datlastsysoid“ does not exist Line1:SELECT DISTINCT datalastsysoid FROM pg_database_第1张图片

原因

Postgres 15 从表中删除了 datlastsysoid 字段pg_database因此 Navicat 15.0.29 或 16.1 之前的任何版本在查找此已弃用字段时都会引发此错误。

要解决此问题,有两个方案

  • 升级到最新的 Navicat 15.0.29 或 16.1 及更高版本(可能需要新的许可证)

  • 手动修改ddl文件

    • 打开 Navicat 文件夹(通常在 C:\Program Files\PremiumSoft\Navicat…) 下),取决于您的 Navicat 版本找到libcc.dll
    • 创建此文件的备份(将其复制并粘贴为“libcc-backup.dll”或任何其他名称)
    • 在任何十六进制编辑器中打开此文件,如果需要,您可以使用在线工具,例如 https://hexed.it/。
    • 在文件中搜索“SELECT DISTINCT datlastsysoid”,并将其替换为“SELECT DISTINCT dattablespace”
    • 将文件保存在原始位置。如果遇到任何安全问题,请将其另存为“.txt”文件,然后将其重命名为“.dll”

原文链接:https://blog.csdn.net/ximaiyao1984/article/details/130775496。感谢大佬的分享,亲测有效。

你可能感兴趣的:(工具,数据库)