Come ottenere tutti i nomi delle colonne in un database Oracle

I database Oracle organizzano le tabelle in account del proprietario chiamati schemi. Gli utenti del database con privilegi diversi possono interrogare i metadati del database, chiamati "dizionario dei dati", per elencare informazioni inclusi nomi di colonne, autorizzazioni degli oggetti o statistiche degli oggetti. Per ottenere i nomi delle colonne da tabelle o viste su un server di database Oracle, eseguire una breve query utilizzando l'oggetto dizionario dati più appropriato. La vista USER_TAB_COLS mostra gli oggetti di proprietà dell'utente connesso, mentre ALL_TAB_COLS mostra tutti gli oggetti disponibili all'utente dati i suoi permessi e DBA_TAB_COLS mostra tutto nel database indipendentemente da quale account utente possiede l'oggetto.

Passo 1

Eseguire una query SQL standard per restituire i risultati dalla vista di sistema più appropriata. Viene visualizzata una query di base nel modulo:

SELEZIONA * DA USER_TAB_COLS;

Sostituire ALL_TAB_COLS o DBA_TAB_COLS a seconda dei casi. Il simbolo "*" restituisce tutte le colonne della query.

Passo 2

Limita i dati restituiti nella query sostituendo "select *" con un elenco di colonne più mirato dalla visualizzazione del dizionario. Per restituire solo lo schema, il nome della tabella e il nome della colonna per gli oggetti a cui l'account connesso può accedere, utilizzare:

SELECT proprietario, nome_tabella, nome_colonna FROM ALL_TAB_COLS;

Limita gli oggetti restituiti limitando i risultati con una clausola "where". Ad esempio, per restituire solo i nomi delle colonne per le tabelle di proprietà dell'utente connesso e che iniziano con la lettera "A", utilizzare:

SELECT * FROM USER_TAB_COLS WHERE nome_tabella LIKE 'A%';