sql >> Database teknologi >  >> RDS >> Oracle

Hvordan viser jeg alle tabeller i et skema i Oracle SQL?

For at se alle tabeller i et andet skema skal du have en eller flere af følgende systemrettigheder:

SELECT ANY DICTIONARY
(SELECT | INSERT | UPDATE | DELETE) ANY TABLE

eller den store hammer, DBA-rollen.

Med enhver af dem kan du vælge:

SELECT DISTINCT OWNER, OBJECT_NAME 
  FROM DBA_OBJECTS
 WHERE OBJECT_TYPE = 'TABLE'
   AND OWNER = '[some other schema]'

Uden disse systemrettigheder kan du kun se tabeller, du har fået tildelt et vist niveau af adgang til, enten direkte eller gennem en rolle.

SELECT DISTINCT OWNER, OBJECT_NAME 
  FROM ALL_OBJECTS
 WHERE OBJECT_TYPE = 'TABLE'
   AND OWNER = '[some other schema]'

Endelig kan du altid forespørge dataordbogen for dine egne tabeller, da dine rettigheder til dine tabeller ikke kan tilbagekaldes (fra 10g):

SELECT DISTINCT OBJECT_NAME 
  FROM USER_OBJECTS
 WHERE OBJECT_TYPE = 'TABLE'


  1. To kolonner i underforespørgsel i where-klausul

  2. Analyse af QuickBooks-data i Dundas BI

  3. Kan SQL Server Express LocalDB tilsluttes eksternt?

  4. Sådan administrerer du privilegier med roller i MySQL