I DBA o lo sviluppatore hanno spesso bisogno di elencare varie tabelle in Oracle. Avrebbero bisogno di elencare tutte le tabelle in Oracle per scopi di controllo e sicurezza. A volte vogliono elencare tutte le tabelle in un particolare tablespace o schema particolare o talvolta elencare tutte le tabelle create di recente. Mostreremmo tutto questo in questo post.
Tutte le informazioni su tabelle e colonne nel database Oracle sono archiviate nelle tabelle SYS.TAB$ e SYS.COL$. Oracle ha fornito viste del dizionario dei dati per ottenere informazioni su tabelle e colonne.
Esistono tre categorie di viste
Tutto l'elenco delle tabelle può essere fatto dalle viste del dizionario sopra.
Per elencare tutte le tabelle di proprietà dell'utente corrente/oracle mostra le tabelle
select tablespace_name, table_name from user_tables;
Le persone che hanno familiarità con il database MySQL sapranno che usiamo le tabelle di visualizzazione per elencare le tabelle in MySQL. Quindi la query sopra è fondamentalmente le tabelle di Oracle Show nel database di Oracle
Elencare tutte le tabelle in un database Oracle/ mostrare tutte le tabelle in Oracle
select owner,table_name,tablespace_name, from dba_tables;
Per elencare tutte le tabelle accessibili all'utente corrente
select owner, tablespace_name, table_name from all_tables;
Ottieni l'elenco delle tabelle in uno schema in Oracle/oracle mostra le tabelle nello schema
select owner, tablespace_name, table_name from dba_tables where owner='&schema';
Query per le tabelle dell'elenco Oracle nel tablespace
select owner, tablespace_name, table_name from dba_tables where tablespace_name='&tablespace_name';
come trovare lo schema di una tabella in 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');
Come trovare la data di creazione di una tabella in 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', /
Come trovare un elenco di tabelle creato di recente
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' /
Elenca tutte le tabelle in un database Oracle in base al nome della colonna
A volte quando si esegue l'analisi dello schema, ovvero le relazioni tra le varie tabelle, è necessario trovare tutte le tabelle che hanno lo stesso nome di colonna. La query seguente può essere utilizzata per aiutare in questo. Possiamo utilizzare la vista in base alle sovvenzioni che abbiamo in mano
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';
Possiamo molte più query costruite nello stesso modo secondo la necessità. Le domande che ho presentato sopra sono le più poste e vengono utilizzate più spesso. Per favore fatemi sapere se volete includere altre domande nell'elenco che aiuteranno le persone nelle attività.
Articoli correlati
come trovare gli indici su una tabella in Oracle
Le statistiche degli oggetti sono bloccate
Query per controllare le dimensioni della tabella in Oracle
Come controllare il tablespace in Oracle
Riferimento a All_Tables dalla documentazione di Oracle