Fragensteller
Formel eines berechneten Datenfelds bei Tabellenstruktur-Druck im Klartext ausgeben

Frage
-
Hallo,
ausgehend von meinem Thread "Tabellenstruktur-Druck - ermitteln, ob Column mittels Formel berechnet wird", stellt sich noch eine Frage:
Wenn man bei der Definition einer Tabelle ein Datenfeld als zu berechnen definiert mittels Formel, wird diese Formel ja als Text eingetragen. Aber wo? Gibt es die Möglichkeit genau diesen Formeltext zu extrahieren, damit man ihn eventuell beim Drucken der Tabellenstruktur mit ausgeben kann?
Grüße-
Dietrich
Alle Antworten
-
Hallo Dietrich,
diese Informationen findest du wie folgt.
select definition, * from [sys].[computed_columns]
Dort musst du dann natürlich noch nach der entsprechenden Spalte filtern (Spaltenname "name").
- Bearbeitet Mathias Liefke Mittwoch, 27. August 2014 08:42
- Als Antwort vorgeschlagen Christoph Muthmann Mittwoch, 27. August 2014 08:46
-
Hier meine Lösung:
SELECT COL.name AS columnname, ST.name AS datatype, COL.maxlength AS charactermaximumlength, COL.precision AS numericprecision, COL.scale AS numericscale, COL.iscomputed AS computed, COL.isnullable AS nullable, SCC.definition FROM sys.tables AS TBL INNER JOIN sys.columns AS COL ON TBL.objectid = COL.objectid INNER JOIN sys.types AS ST ON COL.systemtypeid = ST.systemtypeid LEFT OUTER JOIN INFORMATIONSCHEMA.COLUMNS AS ISC ON COL.name = ISC.COLUMNNAME AND TBL.name = ISC.TABLENAME LEFT OUTER JOIN sys.computedcolumns AS SCC ON COL.objectid = SCC.objectid AND COL.columnid = SCC.columnid WHERE (TBL.name = 'MeinTabellenName') AND (ST.name <> 'sysname') ORDER BY ISC.ORDINALPOSITION
Grüße an alle-
Dietrich