lovegeneration
Goto Top

Auflistung aller Tabellen und Felder einer SQL Datenbank

Hallo Leute face-smile

Ich brauche von einer SQL Datenbank (ca. 100 Tabellen) eine Auflistung
aller Tabellen und der dazugehörigen Felder...

So eine Art Data Dictionary...!!!

Gibt es hierfür einen SQL-Abfrage?

Bitte helft mir kurzfristig...

Vielen vielen Dank

Gruß

Manni face-smile)))

Content-Key: 66987

Url: https://administrator.de/contentid/66987

Printed on: April 23, 2024 at 19:04 o'clock

Member: Dani
Dani Aug 24, 2007 at 06:59:26 (UTC)
Goto Top
Hi!
Na, von welchem Datenbanksystem reden wir denn(MSSQL, MySQL, DB2)?? Falls du MySQL hast, könnte der phpMyAdmin weiterhelfen.


Grüße
Dani
Member: LoveGeneration
LoveGeneration Aug 24, 2007 at 07:01:17 (UTC)
Goto Top
Oh, sorry...

Klar.. kann ja keiner wissen..

es geht um

MSSQL!!!

Danke face-smile

Gruß

Manni face-smile
Member: cykes
cykes Aug 24, 2007 at 07:05:24 (UTC)
Goto Top
... und die Version von MSSQL wäre auch noch ganz interessant face-wink
Member: LoveGeneration
LoveGeneration Aug 24, 2007 at 07:08:53 (UTC)
Goto Top
unterschiedlich...

Ich arbeite mit MSSQL 2000 und MSSQL 2005.

Aber wenn es eine SQL-Abfrage ist, müsste diese bestimmt auf
beiden Versionen lauffähig sein... so hoffe ich face-smile

danke.

Manni face-smile
Member: pi314
pi314 Aug 24, 2007 at 09:12:40 (UTC)
Goto Top
Hi,

hab' mal ein bisschen gegoogelt und gesehen, dass es in MSSQL (worin ich keine Erfahrung habe) anscheinend (fast) die gleichen System-Views wie in Oracle gibt.

Versuch doch mal:
select * from dba_tables;
select * from dba_tab_columns;
Die dba_tab_columns heißt bei Oracle dba_tab_cols. (Nur mal so zur Info)

Eigentlich brauchst du dann nur die dba_tab_columns.
Hier sollten der "table_name" und "column_name" enthalten sein.

Greetz,
pi

Wenn dich das nicht weiterbringt, schau doch mal, was für Systemtabllen o. -view es gibt.
Da ist bestimmt diejenige dabei, die du brauchst.

Das ganze dann noch sortieren (nach Tabellennamen etc.)..
..und hoffentlich gibt's dann die gewünschten Infos aus face-wink
Member: LoveGeneration
LoveGeneration Aug 24, 2007 at 10:30:45 (UTC)
Goto Top
hallo pi face-smile

danke für deine Info...

Leider scheint das nicht so zu funktionieren ;(

Das ist die Rückmeldung des MSSQL-Servers...
wenn ich versuche die Abfrage abzusetzen

Meldung 208, Ebene 16, Status 1, Zeile 1
Ungültiger Objektname 'dba_tables'.


Ich stelle mir das halt so vor, dass ich mit einem
Datenbankbefehlt ALLE TABELLEN und zu jeder
einzelnen Tabelle die Feldnamen erhalte..

z.B. so...

Feldname Datentyp Länge
MDName Text 35
Strasse Text 35
Plz Long 5
Ort Text 35
Fax Text 35
Member: SlainteMhath
SlainteMhath Aug 24, 2007, updated at Oct 18, 2012 at 16:32:21 (UTC)
Goto Top
Member: LoveGeneration
LoveGeneration Aug 24, 2007 at 13:11:11 (UTC)
Goto Top
WOW... ICH LIEBE DICH!!! ;)

DING DING DING DING - BINGO face-smile

das ist GENAU DAS, WAS ICH SUCHTE!!!

Eine letzte Frage...

Gibt es irgendwo noch eine Erläuterung zu den einzelnen
Spaltenbezeichnungen wie z.B. xtype, typestat, xusertype, xprec, xscale usw.

Spalten:
SELECT * FROM <datenbank>.dbo.syscolumns WHERE id=<tabllen id aus sysobjects>

DANKE DANKE DANKE face-smile

Gruß

Manni face-smile
Member: SlainteMhath
SlainteMhath Aug 27, 2007 at 07:32:12 (UTC)
Goto Top
Freud mich, das ich Dir helfen konnte face-smile

Beschreibungen zu den spalten der sys* tabellen sollten sich im Technet oder mit Google finden lassen.