databasepostgresqlpgadminpermission-deniedpgadmin-4

Why am I getting a permission denied error for schema public on pgAdmin 4?


I'm trying to view the raw data from the AACT Database in pgAdmin 4. I'm on a Mac computer. When I just try to view the first 100 rows from the 'complete_oncology' table, I get the below error:

ERROR: permission denied for schema public
LINE 1: SELECT * FROM public.complete_oncology
                      ^
SQL state: 42501
Character: 15

Do I have insufficient permissions? If yes, how do I grant myself permissions to view this table? I am able to see other tables from different Schemas in the AACT database. I've read some users suggest granting myself permissions with something like the below, but no luck:

GRANT SELECT ON complete_oncology TO PUBLIC

This just turns up an error:

ERROR:  relation "complete_oncology" does not exist
SQL state: 42P01

Solution

  • If you get a "permission denied" for public.complete_oncology, but a "relation does not exist" for complete_oncology, that can only mean only one thing: you do not have USAGE permissions on the public schema.

    Get the owner of the schema to run

    GRANT USAGE ON SCHEMA public TO your_user;
    

    Then you should be able to see the table. If you still lack permissions on the table itself, get the owner to grant you SELECT on the table as well.