I have a postgres 9.4 database and when I use the:


command, tables in the 'public' schema, and other user-created schemas are shown.

I have the exact same database on a Postgres 9.6 server and when I use:


only the tables in the 'public' schema are shown, and in order to see tables in the other user-created schema, i have to use:

\dt schemaname.* 

to see those tables. Is this a difference between 9.4 and 9.6, or any i missing something else. permissions?


Check the search_path for each user you're trying to check on.

SHOW search_path;

If they're different you can set them with SET search_path TO mySchema, public;

  • this is what i needed. incidentally, my real problem appeared to be the fact that i had capital letters and an unserscore '_' in my schema name, and that was throwing a wrench into the works. – jamierob Sep 11 '17 at 17:44
  • Yeah the whole folding to lower (or upper) case thing in SQL bites a lot of folks int he butt. Glad you got it sussed. – Scott Marlowe Sep 11 '17 at 19:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.