使用navicat连接postgresql时会出现无法打开数据库的问题(测试连接ok,但是打开数据库时会出现"ERROR: column datlastsysoid“ does not exist LINE 1: SELECT DISTINCT datlastsysoid FROM pg database")
原因:
Postgres 15 从表中删除了 datlastsysoid 字段pg_database,因此 Navicat 15.0.29 或 16.1 之前的任何版本在查找此已弃用字段时都会引发此错误
解决(navicat15版本为例):
方法一:安装16.1及以上版本
方法二:(不报错但是不能用)
1、关闭navicat,打开navicat安装目录,找到libcc.dll文件(先备份一份防止后面出问题方便还原)
2、使用十六进制编辑器打开libcc.dll文件,推荐使用在线编辑器https://hexed.it/,打开编辑器后导入libcc.dll文件。
3、ctrl+f 搜索"SELECT DISTINCT datlastsysoid",找到后将"datlastsysoid" 替换为"dattablespace",将文件另存为到初始位置,打开navicat,测试连接打开数据库,可以正常使用。
第二个方法完美解决,如有遇到,可以一试
原文链接:https://blog.csdn.net/qq_43116655/article/details/134955581
看到这里了,其实能打开但是依旧看不到表。老老实实下载新版本吧!
或者如果我操作错了欢迎指正。