Alle Spaltennamen einer MSSQL Tabelle ausgeben lassen

Geht eigentlich ganz einfach wenn man weiß wie:


SELECT column_name FROM INFORMATION_SCHEMA.Columns where TABLE_NAME = 'foo'

Alle, und ich meine wirklich alle, Tabellennamen, Spaltennamen sowie deren Datentyp und Länge kann man sich übrigends mit


SELECT
table_name=sysobjects.name,
column_name=syscolumns.name,
datatype=systypes.name,
length=syscolumns.length
FROM
sysobjects
JOIN syscolumns ON sysobjects.[id] = syscolumns.[id]
JOIN systypes ON syscolumns.xtype=systypes.xtype
WHERE
sysobjects.[xtype]='U'
ORDER BY
sysobjects.[name],
syscolumns.colid

ausgeben lassen … aber das nur mal am Rande :)

4 thoughts on “Alle Spaltennamen einer MSSQL Tabelle ausgeben lassen

  1. Vielen Dank für den Post – hat mir heute (so viele Jahre nach Veröffentlichung) sehr geholfen! Super, wenn Leute ihr Wissen teilen und die Info bei der Suche in Goo.. so gut gefunden wird!:) :) :)

  2. Hier ein Select um in einer Oracle Datenbank alle Tabellen und deren Spalten ausgeben zu lassen (Beispiel bezieht sich hier auf die user_tables):

    SELECT u.table_name, a.column_name
    FROM all_tab_columns a, user_tables u
    WHERE a.table_name = u.table_name
    ORDER BY u.table_name, a.column_name;

Comments are closed.