SQL Befehl

Gast #582510
Lesenswert?

Hallo,

hab mal noch eine Frage zu den SQL-Befehlen. Ich suche einen Befehl um 
mir einen kurzen Überblick über alle Tabellen zu verschaffen (select * 
from cat ist mir zu wenig)
Der Abfrage sollte alle Tabellenköpfe liefern und wenns geht zusätzlich 
noch die Beziehungen und die Primary/ForeignKeys anzeigen.

Kennt sich da jemand besser aus?
#582639
Lesenswert?

Hi,

naja auf die schnelle fällt mir jetzt keine direkte Lösung ein aber 
über:

SHOW TABLES;

kannst du dir alle Tabellen anzeigen lassen und über:

SHOW COLUMNS FROM tbl; bzw. SHOW FULL COLUMNS FROM tbl;

kriegst du die Infos zu der Tabelle. Ansonsten einfach mal mehr zu SHOW 
u.ä. im Manual suchen! HTH

Uwe
Gast #582649
Lesenswert?

Wenn du nur einen Überblick über die DB bekommen möchtest (also nicht 
die Tabelleninformation dynamisch in deinem Programm brauchst), dann 
würde ich mir ein graphisches Tool besorgen. Davon gibts jede Menge, ich 
habe z.B mal "Toadnode" benutzt.
Gast #582686
Lesenswert?

Ich benutze Oracle als DB. Die Abfrage soll möglichst ohne irgendwelche 
Tools auskommen.

SHOW geht leider nicht, im Manual steht SHOW nur im Zusammenhang mit 
FUNCTIONS, PROCEDURES, VIEWS usw.

Das Abfrageergebnis stell ich mir etwas so vor:

Table 1

Column 1 | Column 2 | Column 3

Table 2

Column 1 | Column 2 | Column 3 | Column 4

...
...
..


Und evt. noch die Primary -  und Foreign-Keys hervorgehoben.
Persönliche Seite #582826
Lesenswert?

klaus wrote:
> Ich benutze Oracle als DB.

Sowas dachte ich mir schon. SHOW TABLES oder SHOW COLUMNS ist (soweit 
ich weiß?) MySQL spezifisch.

Das Problem ist, dass ich mich noch nie mit Oracle beschäftigt habe. 
Findest du in der Befehlsreferenz von Oracle nicht irgendwelche Befehle? 
Eventuell findest du ja Beispiele im Internet mit einer Suchmaschine 
deiner Wahl.
Gast #583234
Lesenswert?

SELECT table_name FROM user_tables;

zeigte alle Tabellen im Schema unter Oracle.

Spalten dazu anzeigen ist komplizierter:

SELECT
column_name,
nullable,
data_type,
data_length
FROM user_tab_columns order by table_name;

oder sowas in der Art.
Gast #583376
Lesenswert?

@ Uwe M.: DESCRIBE funktioniert schonmal gut,allerdings nur mit einer 
Tabelle

@ Florian: die SELECT's funktioniern auch prima, ich suche noch nach 
einer Möglichkeit beides zu kombinieren:

SELECT table_name FROM user_tables; erzeugt mir eine Liste mit allen 
Tabellen

ist es möglich für jeden Eintrag dieser Abfrage autmatisch ein DESCRIBE 
zu machen?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren