I have a database named `somedb` owned by user `someuser`. I have revoked all privileges from public to this database.

I want to grant connect privileges to `anotheruser`, but I don't want `anotheruser` to be able to query any of the non-system tables (i.e. any table created by `someuser`) in its public schema. Is that possible? Or do I need to move all the tables in the public schema to a different schema?

When I `GRANT CONNECT ON DATABASE somedb TO anotheruser;` and connect to database `somedb` as user `anotheruser`, I can query all the tables in `somedb`.

I tried the following, but it didn't work:
```
REVOKE ALL ON somedb.public.sometable FROM anotheruser;

ALTER DEFAULT PRIVILEGES FOR USER anotheruser IN SCHEMA public
   REVOKE ALL ON TABLES FROM anotheruser;
ALTER DEFAULT PRIVILEGES FOR USER anotheruser IN SCHEMA public
   REVOKE ALL ON SEQUENCES FROM anotheruser;
```
It might be useful to know that `anotheruser` has SELECT and other privileges in a *different* database on the same server.