The docs are unenlightening:
- ALL_TABLES:
Provides summary information about tables in a Vertica database.
- TABLES:
Provides information about all tables in the database.
The reason I'm asking is that users are confused about why they can see some tables in one but not the other. It's related to permissions, but it's not clear exactly how.
For example, a user is telling me they have access to query a table. However, that table doesn't show up in TABLES
and its columns don't show up in COLUMNS
, but the table does show up in ALL_TABLES
.
So, this leads to the following questions:
- What's the difference between
ALL_TABLES
andTABLES
? - How can users see a list of all the tables (and columns!) they have access to query?
Best Answer
ALL_TABLES shows tables and views. TABLES shows only tables:
There is also a system table called views:
A user can select from tables, all_tables and views to see which tables and vies he has permissions for. I believe I got this from http://www.vertica-forums.com/viewtopic.php?t=726
Here is a tool I use as DBADMIN to summarize permissions: