none
Views über sys.* automatisiert auslesen RRS feed

  • Frage

  • Hallo zusammen,

    ich suche eine Möglichkeit aus mehreren Datenbanken(SQL 2014) die dort abgelegten Views automatisch auslesen zu können. Es geht mir vor allem um die dort verwendeten Tabellen/Views und die entsprechenden Spalten. Über sys.views und entsprechend sys.columns komme ich an die Ausgabedaten. Dazu bräuchte ich jetzt die Quelldaten aus denen die Ausgabespalten zusammengesetzt sind.

    Danke!

    Gruß Ralf


    Ralf S,

    Donnerstag, 5. November 2015 10:30

Antworten

Alle Antworten

  • Habe gerade in INFORMATION_SCHEMA.VIEWS die Definition gefunden, allerdings ist das nur der eigentliche SQL-Text der View. Mir würde aber weiterhelfen wenn ich das schön auslesen kann um die Daten dann weiterverwenden zu können.

    Ralf S,

    Donnerstag, 5. November 2015 10:34
  • Hallo Ralf,

    für einige Varianten siehe http://www.sqlservercurry.com/2010/09/display-view-definition-using-t-sql.html

    OBJECT_DEFINITION kann man dabei gut in erweiterte Abfragen einarbeiten.

    Gruß Elmar

    Donnerstag, 5. November 2015 10:38
    Beantworter
  • Hallo Elmar,

    danke erstmal für die schnelle Antwort. Allerdings ist das Ergebnis das gleiche die über INFORMATION_SCHEMA.VIEWS. Ich dachte es gibt eine Möglichkeit die verwendeten Quelltabs/-Views einzeln auszulesen, da wir das ganze zu Dokumentationszwecken in Tabellen schreiben wollten (welche View verwendet welche Tabellen/Spalten. Den kompletten String automatisiert zu zerlegen ist mir dann doch zu aufwendig.

    Ich bräuchte etwas in der Art:

    View Quelltabellen Spalte Spalte
    V_Dim Quelltab 1 Quelltab 1 Spalte A Quelltab 1 Spalte B
    V_Dim Quelltab 2 Quelltab 2 Spalte 1 Quelltab 2 Spalte 3

    Gruß Ralf


    Ralf S,

    Donnerstag, 5. November 2015 11:47
  • Hallo Ralf,

    ab SQL Server Version 2012 gibt es sys.dm_exec_describe_first_result_set (Transact-SQL), über die man auch die Basistabellen einer View ermitteln kann.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Donnerstag, 5. November 2015 11:57
  • Hallo Olaf,

    hat mir schon einen ganzen Schritt weitergeholfen, Danke!!

    Macht bei 35 Datenbanken mit jeweils ca. 10 - 50 Views einfach mehr Sinn das ganze automatisiert wegzuschreiben und nur noch die evtl. fehlenden Infos manuell nachzutragen.

    Gruß Ralf


    Ralf S,

    Donnerstag, 5. November 2015 12:57