Wofür verwendet ihr in SQL Server erweiterte Eigenschaften? Einige Artikel und Blogs schlagen vor, dass sie zur Selbstdokumentation der Datenbank und ihrer Objekte verwendet werden, aber ich kann nicht sehen, dass dies richtig verwendet wird ... wird dies von den meisten weitgehend ignoriert?
sql-server
sql-server-2008
Sam Yi
quelle
quelle
Antworten:
Weitgehend ignoriert, wie Sie sagen.
Erweiterte Eigenschaften sind sowohl in T-SQL als auch in der GUI etwas umständlich zu lesen und zu schreiben. Die IMHO-Dokumentation sollte an anderer Stelle aufbewahrt werden (Datenbankprojekte, Projektdokumentation usw.).
Hier ist ein guter Artikel über erweiterte Eigenschaften , der auch einige Ihrer Zweifel anspricht.
quelle
Ich arbeite mit einem System, in dem wir zahlreiche Datenbanken haben. Die Selbstdokumentation ist nützlich, da jede Datenbank eine andere Struktur haben kann.
Wir verwalten einen Versionsprozess für die Datenbankstruktur und speichern diese Informationen in den erweiterten Eigenschaften. Wir erfassen auch Beschreibungen von Tabellen, Spalten und anderen Datenbankobjekten.
Das Arbeiten mit erweiterten Eigenschaften wäre jedoch ohne die Hilfe der Automatisierung nicht möglich. Wir haben Tools entwickelt, mit denen wir die Informationen in den erweiterten Eigenschaften erfassen und speichern können. Außerdem verfügen wir über Tools zum Anzeigen und Berichten der Informationen.
Die Entwicklung der Tools war in dieser Umgebung nützlich, aber ich sehe keinen Vorteil, wenn Sie in einem Geschäft arbeiten, in dem Sie nur sehr wenige Datenbanken haben.
quelle
Ich habe noch kein einziges Projekt gesehen, das erweiterte Eigenschaften verwendet hat. IMO der Grund ist folgender: Auch wenn wir Dokumentation in der Datenbank speichern wollen, was normalerweise nicht der Fall ist, gibt es Alternativen. Normalerweise machen erweiterte Eigenschaften nicht genau das, was wir wollen. Auf der anderen Seite ist es so einfach, eine eigene Lösung einzuführen, die genau das tut, was wir brauchen. Warum also die Mühe machen?
quelle
In unseren Projekten verwenden wir sie, um Versionsinformationen in erweiterten Eigenschaften zu speichern, die pro Datenbank festgelegt wurden.
Beispiel: Wir verwenden Team Foundation-Projekte und verfolgen in einer erweiterten Datenbank-Eigenschaft die letzte Post-Deployment-Skriptnummer, die aus dem Post-Deployment-Ordner ausgeführt wurde (z. B. - wir haben die Skripte 1 bis 23, die ext. -Eigenschaft ist auf 15 festgelegt, also die Post-Deployment-Skript führt nur Skripte ab 16 aus. Gleiches gilt für Skripts vor der Bereitstellung.
Ich bin damit einverstanden, dass wir diese Informationen in einer Tabelle behalten können, aber es ist eine Möglichkeit, erweiterte Eigenschaften zu verwenden.
quelle
Hier ist ein Beispiel für ein Datenwörterbuchskript, das häufig Tabellen- und Spaltenbeschreibungen verwendet und zeigt, wie nützlich sie für die Selbstdokumentation sein können: http://www.csvreader.com/posts/data_dictionary.php .
quelle