这个错误表示当前连接 PostgreSQL 的用户没有访问platschema 的权限。这里有几种解决方法:
1.检查并授予权限
使用一个有权限的用户(如 postgres 或 schema 所有者)登录,然后授权:
-- 1. 授予 schema 的使用权限 GRANT USAGE ON SCHEMA plat TO 你的用户名; -- 2. 授予 schema 中表的权限(如果需要) GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA plat TO 你的用户名; -- 3. 授予序列的权限(如果表有自增字段) GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA plat TO 你的用户名; -- 4. 授予函数的权限(如果有函数) GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA plat TO 你的用户名;2.创建 schema 时指定所有者
如果 SQL 文件包含创建 schema 的语句,确保指定所有者:
CREATE SCHEMA plat AUTHORIZATION 你的用户名;3.修改默认搜索路径
在执行 SQL 文件前,设置搜索路径:
SET search_path TO plat, public;