2012-06-07 2 views
5

Klingt ziemlich einfach Abfrage der Spaltennamen aus einer Tabelle, richtig? Tatsächlich gibt es eine Antwort auf diese Frage How can I get column names from a table in Oracle?Abfrage Spaltennamen aus einer Tabelle von einem anderen Benutzer

Das Hauptproblem ist, dass die Tabelle zu einem anderen Benutzer gehört. Mein Benutzer ist nur für die Integration und ich habe keine Datenbankberechtigungen.

Ich bin in der Lage zu So wie einige Abfrage zu tun: SELECT * FROM anotherUser.THE_TABLE;

Aber so etwas wie SELECT * FROM USER_TAB_COLUMNS Rückkehr keine Zeilen.

Vielleicht kann ich Abfragen über all_tab_columns erstellen, Gibt es noch schnellere Optionen ohne Verfahren?

* Es ist eine Oracle-Datenbank!

+0

: 'user_tab_columns' ist ein Data Dictionary, das Spalten der Tabelle enthält, die zu Ihrem Schema gehört, nicht' anotherUser', wenn Sie mit 'all_tab_columns' oder dba_tab_columns' versuchen möchten. Schauen Sie bitte in dieses' http : // docs.oracle.com/cd/E11882_01/server.112/e17110/statviews_1001.htm # i1572007' –

Antwort

5
SELECT * 
    FROM ALL_TAB_COLUMNS 
WHERE OWNER='ANOTHERUSER' 
    AND TABLE_NAME='THE_TABLE'; 

Sollte Sie dorthin bringen, wenn Sie Privilegien auf dem Tisch haben.