Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Pobierz listę wszystkich tabel w Oracle?

SELECT owner, table_name
  FROM dba_tables

Zakładamy, że masz dostęp do DBA_TABLES widok słownika danych. Jeśli nie masz tych uprawnień, ale ich potrzebujesz, możesz zażądać, aby administrator DBA jawnie przyznał Ci uprawnienia do tej tabeli lub aby administrator DBA przyznał Ci SELECT ANY DICTIONARY uprawnienia lub SELECT_CATALOG_ROLE rola (każda z nich pozwoliłaby na zapytanie dowolnej tabeli słownika danych). Oczywiście możesz chcieć wykluczyć pewne schematy, takie jak SYS i SYSTEM które mają dużą liczbę tabel Oracle, których prawdopodobnie nie obchodzisz.

Alternatywnie, jeśli nie masz dostępu do DBA_TABLES , możesz zobaczyć wszystkie tabele, do których Twoje konto ma dostęp, poprzez ALL_TABLES widok:

SELECT owner, table_name
  FROM all_tables

Chociaż może to być podzbiór tabel dostępnych w bazie danych (ALL_TABLES pokazuje informacje dla wszystkich tabel, do których użytkownik uzyskał dostęp).

Jeśli interesują Cię tylko tabele, których jesteś właścicielem, a nie te, do których masz dostęp, możesz użyć USER_TABLES :

SELECT table_name
  FROM user_tables

Od USER_TABLES zawiera tylko informacje o tabelach, które posiadasz, nie ma OWNER kolumna – właścicielem z definicji jesteś Ty.

Oracle ma również wiele starszych widoków słowników danych — TABS , DICT , TABS i CAT na przykład - to mogłoby być użyte. Ogólnie rzecz biorąc, nie sugerowałbym używania tych starszych widoków, chyba że absolutnie musisz przenieść swoje skrypty do Oracle 6. Oracle nie zmieniało tych widoków od dłuższego czasu, więc często mają problemy z nowszymi typami obiektów. Na przykład TABS i CAT oba widoki pokazują informacje o tabelach znajdujących się w koszu użytkownika, podczas gdy [DBA|ALL|USER]_TABLES wszystkie widoki je odfiltrowują. CAT pokazuje również informacje o logach widoku zmaterializowanego z TABLE_TYPE "TABELI", który prawdopodobnie nie będzie tym, czego naprawdę chcesz. DICT łączy tabele i synonimy i nie mówi, kto jest właścicielem obiektu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać klauzuli zbiorczego zbierania z instrukcją SELECT INTO w bazie danych Oracle

  2. Zapamiętaj instancje RAC w narzędziach Perf

  3. Wybierz z tabeli, znając tylko datę bez czasu (ORACLE)

  4. Jak rozpakować plik w PL/SQL?

  5. Tworzenie nowej bazy danych i nowe połączenie w Oracle SQL Developer