2013-02-25 25 views
5

voglio interrogare un database per un nome di colonna per trovare la tabella senza sapere il nome della tabella (ci sono un numero enorme di tabelle)Trova tabella dalla query nome della colonna in Oracle SQL Developer

sto lavorando con un enorme database al momento e cercando di trovare dove, sulla base del codice CFML e l'URL della pagina problematica, un sito Web sta recuperando informazioni da. Sono nuovo di ColdFusion, tuttavia posso vedere che l'URL contiene alcuni riferimenti ID con nomi di colonne. Alcuni sono stato in grado di trovare facilmente e altri, non ho idea perché i nomi delle colonne sono piuttosto vaghi, ad es. 'NTASKID'.

Il mio piano è provare a interrogare il database utilizzando il nome della colonna, ma Google mi ha presentato domande che richiedono conoscere il nome della tabella che non ho. Immagino che quegli esempi potrebbero essere stati più utili per le tabelle denormalizzate (?).

Se qualcuno conosce una tale richiesta sarebbe fantastico. Inoltre, qualcuno potrebbe commentare se sto seguendo la strada giusta di indagine qui?

+0

provare 'select * from ALL_TABLES' –

+0

tanto per essere chiari do intendi qualcosa del tipo: SELECT * FROM database_name dove colonna come '% task%'; – SunnyNewb

+1

Non sono molto adatto a Oracle, ma Oracle dovrebbe contenere una tabella 'ALL_TABLES' che contiene informazioni sulle tue tabelle –

risposta

12

La query che ha funzionato è stato

SELECT * FROM ALL_TAB_COLUMNS 
WHERE COLUMN_NAME LIKE '%TASK%' 
AND owner = 'database_name'; 

Era la parte 'proprietario' non ho in precedenza a conoscenza. Tutti quelli che hanno risposto hanno certamente aperto strade per ulteriori ricerche su Google.

Acclamazioni

1

Se è necessario trovare il nome della tabella, 'juergen d' ha risposto alla domanda. Se vuoi trovare i nomi delle colonne, usa user_tab_columns/all_tab_columns per selezionare i nomi delle colonne dove table = 'YOUR_TABLE' - deve essere in maiuscolo così come i nomi delle colonne.