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

Sådan viser du alle tabeller i Oracle

DBA'er eller udvikleren har ofte brug for at liste forskellige tabeller i oracle. De ville kræve at liste alle tabeller i Oracle til revisions- og sikkerhedsformål. Nogle gange ønsker de at liste alle tabeller i et bestemt tablespace eller bestemt skema eller nogle gange for at liste alle de tabeller, der er oprettet for nylig. Vi vil vise alle disse i dette indlæg.

Alle tabel- og kolonneoplysninger i Oracle-databasen er gemt i SYS.TAB$- og SYS.COL$-tabeller. Oracle har leveret dataordbogsvisninger for at få oplysninger om tabeller og kolonner.

Der er tre kategorier af visninger

Al oversigt over tabellerne kan udføres fra ovenstående ordbogsvisninger.

At liste alle tabeller, der ejes af den aktuelle bruger/oracle show-tabeller

select tablespace_name, table_name from user_tables; 

Folk, der er bekendt med MySQL-databasen, vil vide, at vi bruger show-tabeller til at liste tabellerne i MySQL. Så ovenstående forespørgsel er dybest set oracle show-tabellerne i oracle-databasen

At vise alle tabeller i en Oracle-database/vise alle tabeller i Oracle

select owner,table_name,tablespace_name, from dba_tables;

At liste alle tabeller, der er tilgængelige for den aktuelle bruger

 select owner, tablespace_name, table_name from all_tables;

Få listen over tabeller i et skema i Oracle/oracle vis tabeller i skemaet

select owner, tablespace_name, table_name from dba_tables where owner='&schema';

Forespørgsel efter orakellistetabeller i tablespace

select owner, tablespace_name, table_name from dba_tables where tablespace_name='&tablespace_name';

hvordan man finder skemaet for en tabel i Oracle

set lines 140 pages 1000
col table_name for a30
col owner for a7
select owner,table_name,initial_extent,ini_trans,freelists from dba_tables where table_name=upper('&tab_name');

Sådan finder du oprettelsesdatoen for en tabel i oracle

select owner,object_name,object_type,status,
to_char(last_ddl_time,'DD-MON-YY HH24:MI:SS') DDL_TIME,to_char(created,'DD-MON-YY HH24:MI:SS') CR_DATE
from dba_objects
where object_name =upper('&obj_name') and owner='&OWN' and object_type='TABLE',
/

Sådan finder du en nyligt oprettet liste over tabeller

select owner,object_name,object_type,status,
to_char(last_ddl_time,'DD-MON-YY HH24:MI:SS') DDL_TIME,to_char(created,'DD-MON-YY HH24:MI:SS') CR_DATE
from dba_objects
where created > sysdate -7 and  object_type='TABLE'
/

Vis alle tabeller i en Oracle-database efter kolonnenavn

Nogle gange skal vi, når vi analyserer skemaet, dvs. relationer mellem de forskellige tabeller, finde alle de tabeller, der har de samme kolonnenavne. Nedenstående forespørgsel kan bruges til at hjælpe med dette. Vi kan bruge udsigten efter de bevillinger, vi har i hånden

select owner,table_name from all_tab_columns where column_name = '&col_name';
 or
 select owner, table_name from dba_tab_columns where column_name = '&col_name';

Vi kan mange flere forespørgsler bygget på samme måde efter behov. De forespørgsler, som jeg har præsenteret ovenfor, er de mest stillede, og de bruges oftest. Lad mig venligst vide, hvis du vil inkludere flere forespørgsler på listen, som vil hjælpe folk i opgaverne.

Relaterede artikler

hvordan man finder indekser på en tabel i Oracle
objektstatistik er låst
Forespørgsel for at kontrollere tabelstørrelse i Oracle
Sådan tjekker man Tablespace i Oracle
All_Tables reference fra Oracle-dokumentation


  1. Hvordan finder man afhængigheder inde i en oracle-pakke?

  2. En anden måde at se automatiske opdateringer til statistik

  3. Dynamisk MySQL-databaseforbindelse til Entity Framework 6

  4. TYPE Definition Ændring i Oracle 21c