Übersicht über die Architektur der Database Edition
Aktualisiert: November 2007
Visual Studio Team System Database Edition bietet Datenbankentwicklern viele der Tools, Features und Funktionen, die Visual Studio Team System auch anderen Mitgliedern eines Anwendungsentwicklungsteams bereitstellt. Sie können z. B. dasselbe Versionskontrollsystem und andere Lebenszyklustools für die Datenbank verwenden, das bzw. die Softwareentwickler für ihren Quellcode verwenden. Da die Architektur von Database Edition so eng in Visual Studio Team System integriert ist, können Sie den Vorgang der Datenbankentwicklung noch einfacher verwalten und gleichzeitig die Zusammenarbeit mit den Entwicklern anderer Aspekte der Anwendung verbessern.
Weitere Informationen über die Funktionen von Database Edition finden Sie unter Verwalten von Datenbankänderungen.
Integration von Visual Studio
Die Architektur von Team Edition for Database Professionals ist in den übrigen Teil von Visual Studio Team System integriert, und darüber hinaus ist die Benutzeroberfläche für alle Komponenten einheitlich. Sie arbeiten mit Datenbankprojekten in vielen Fällen wie mit anderen Projekttypen in Visual Studio. Datenbankspezifische Vorlagen werden in den Dialogfeldern Neues Projekt und Neues Element hinzufügen angezeigt. Außerdem können Sie Aktionen (z. B. das Erstellen und Bereitstellen) ausführen und Einstellungen (z. B. die Zieldatenbankverbindung und die Datenbanksortierreihenfolge) konfigurieren, die speziell für die Datenbankentwicklung vorgesehen sind.
Datenbankprojekte werden im Projektmappen-Explorer gemeinsam mit vorhandenen Projekttypen angezeigt. Sie können diese Projekte unter Versionskontrolle stellen, Projektelemente hinzufügen und entfernen und diese Projekte mit MSBuild erstellen.
Architektonische Zusammenstellung
Database Edition umfasst die folgenden Architekturbereiche:
Datenbankprojekt
Datenbank für die Entwurfszeitvalidierung
Infrastruktur des Datenbanklebenszyklus
Jedes Datenbankprojekt ist eine Offlinedarstellung einer Datenbank und in der Struktur einer Visual Studio-Projektmappe enthalten. Sie müssen Änderungen an einem Datenbankprojekt erstellen und bereitstellen, damit diese für eine aktive Instanz von Microsoft SQL Server 2000 oder Microsoft SQL Server 2005 übernommen werden.
Die Entwurfsdatenbank ist eine lokale Instanz von SQL Server und wird für die Entwurfszeitvalidierung des Datenbankprojekts verwendet.
Infrastruktur des Datenbanklebenszyklus
Die Infrastruktur des Datenbanklebenszyklus bietet eine Reihe von Diensten, vom Datenbankprojekt bis zur Entwurfsdatenbank. Diese Infrastruktur enthält grundlegende Features, die für alle Datenbankprojekte erforderlich sind. Diese Features werden im Allgemeinen als Datenbankprojektbasis bezeichnet. Features, die auf dieser Grundlage aufbauen, werden als Datenbankprojektfeatures bezeichnet.
Datenbankprojektbasis
Die Datenbankprojektbasis umfasst die folgenden Hauptfunktionen:
Projekt- und Projektelementanalyse
Die Basis analysiert Datenbankprojekte und Datenbankprojektelemente, z. B. Tabellen, Ansichten und gespeicherte Prozeduren. Dabei werden die Informationen über die Datenbankobjekte aus den Skriptdateien extrahiert, aus denen sich das Datenbankprojekt zusammensetzt. Diese Funktionalität wird z. B. verwendet, wenn Sie Datenbankobjekte aus vorhandenen Datenbankskripts importieren. Datenbankprojekte bestehen aus Auflistungen von Transact-SQL (T-SQL)-Skripts. Das Datenbankprojektsystem interpretiert diese Skripts, um eine Interaktion mit diesen als logischen Schemaobjekten zu ermöglichen.Datenbankschema importieren
Mit der Option Datenbankschema importieren fügen Sie eine vorhandene Datenbank in Database Edition hinzu und stellen diese unter Versionskontrolle. Selbst in einer Umgebung, in der die Datenbank unter Versionskontrolle verwaltet wird, können Änderungen auf einem aktiven Datenbankserver auftreten, die Sie in das Datenbankprojekt übernehmen müssen. Mit "Schemavergleich" können Sie Änderungen von einem Datenbankserver in ein Datenbankprojekt importieren, das noch in der Entwicklung ist.Verfolgen von Abhängigkeiten zwischen Datenbankobjekten
Das Datenbankprojektsystem verfolgt automatisch Abhängigkeiten zwischen Datenbankobjekten. Durch Verfolgen der Abhängigkeiten zwischen Objekten stellen Sie sicher, dass die richtigen Objekte erstellt und bereitgestellt werden. Wenn Sie eine Änderung am Produkt vornehmen, die zu einer Unterbrechung führt, erkennen Sie diese Unterbrechung erst, wenn Sie die Änderung speichern. Normalerweise erkennen Sie Änderungen, die zu Unterbrechungen führen, wenn Sie versuchen, einen Datenbankkomponententest zu erstellen, bereitzustellen oder auszuführen. Bei der Datenbankumgestaltung werden mithilfe dieser Abhängigkeiten die erforderlichen Änderungen ermittelt. Außerdem können Sie bei der Datengenerierung die Abhängigkeiten im Datengenerierungsplan erkennen.Datenbankumgestaltung
Bei der Datenbankumgestaltung werden Abhängigkeiten zwischen Datenbankobjekten ermittelt. Diese Informationen werden dann zur genauen Weitergabe von Änderungen innerhalb der Datenbank- und Komponententestprojekte verwendet.Erstellen von Buildskripts für neue und vorhandene Bereitstellungen
Buildskripts werden zum Erstellen einer Datenbank oder zum Aktualisieren einer vorhandenen Datenbank verwendet, um das Schema im Datenbankprojekt anzuwenden. Buildskripts bestehen aus Skripts vor der Bereitstellung, Skripts für die Datenbankobjekterstellung und Skripts nach der Bereitstellung. Wenn Sie eine vorhandene Datenbank bereitstellen, wird das Datenbankprojekt beim Erstellen mit dem aktuellen Schema der Zieldatenbank verglichen. Es wird ein Aktualisierungsskript generiert, um die Zieldatenbank mit einer Kombination aus ALTER-Anweisungen, CREATE-Anweisungen und DROP-Anweisungen zu aktualisieren.Validieren von Builds
Diese Funktion umfasst das Validieren der Buildschritte für Skripts vor der Bereitstellung, Skripts zum Erstellen oder Aktualisieren von Datenbankobjekten und Skripts nach der Bereitstellung sowie das Anzeigen der Ergebnisse.
Datenbankprojektfeatures
Neben den Hauptdiensten für Datenbankprojekte stehen weitere Features auf Grundlage der Datenbankprojektbasis zur Verfügung. Diese Features beinhalten:
Vergleichen von Datenbankschemas
Ermöglicht das Vergleichen von zwei Datenbankschemas, unabhängig davon, ob diese in einer aktuellen Version eines Datenbankprojekts, in einer früheren Version eines Datenbankprojekts, das in der Versionskontrolle gespeichert ist, oder in einer oder mehreren aktiven Datenbanken enthalten sind. Sie können auch die erforderlichen Skripts generieren, um die Zieldatenbank in Übereinstimmung mit der Quelldatenbank zu bringen.Vergleichen von Datenbankdaten
Ermöglicht das Vergleichen der Daten in zwei Datenbanken, sofern Sie über aktive Datenbanken mit übereinstimmenden Schemas verfügen. Sie können auch die erforderlichen Skripts generieren, um die Zieldatenbank in Übereinstimmung mit der Quelldatenbank zu bringen.Datenbankkomponententest
Generiert automatische Komponententests für eine gespeicherte Prozedur oder eine Funktion und unterstützt das manuelle Erstellen von Komponententest aus gültigem Transact-SQL-Code. Mithilfe dieses Diensts können Sie sicherstellen, dass an anderer Stelle vorgenommene Änderungen die Funktion nicht beeinträchtigen. Sie können während eines Komponententests automatisch die Datenbank erstellen und bereitstellen und reproduzierbare Testdaten generieren, um einen konsistenten Anfangszustand herzustellen. Dieser Dienst beinhaltet auch eine öffentliche API, mit der Sie benutzerdefinierte Asserts für das Hinzufügen einer wiederverwendbaren Validierungslogik für die Komponententests schreiben können.Generieren von Daten
Ermöglicht das Auffüllen einer Datenbank mit realistischen Testdaten, die nicht nur eine Kopie der Produktionsdaten darstellen, die vertrauliche Informationen enthalten könnten. Sie können außerdem benutzerdefinierte Datengeneratoren erstellen. Dieser Dienst umfasst auch eine öffentliche API für das Schreiben benutzerdefinierter Datengeneratoren für CLR-Datentypen, benutzerdefinierte Typen und benutzerdefinierte Datentypen und für das Verwenden von Algorithmen für die Datengenerierung für integrierte Typen.Erstellen und Ausführen von Datenbankskripts
Bietet einen Transact-SQL-Editor, in dem Sie Datenbankskripts erstellen, analysieren und ausführen können. Die Verwendung ähnelt der von Query Analyzer oder von SQL Server Management Studio. Dies ist derselbe Editor, den Sie zum Bearbeiten der Skripts im Datenbankprojekt verwenden. Da dies derselbe Editor ist, steht Ihnen immer eine konsistente Benutzeroberfläche zur Verfügung, unabhängig davon, ob Sie mit einem Offline-Datenbankprojekt arbeiten oder Skripts auf einem tatsächlichen Datenbankserver ausführen
Befehlszeilenunterstützung
Einige der Aktionen, die Sie regelmäßig ausführen, müssen im Rahmen eines automatisierten Prozesses ausgeführt werden. Zu diesem Zweck können Sie auf der Befehlszeile das Datenbankprojekt erstellen und bereitstellen und Komponententests ausführen, wobei Sie auch repräsentative und vorhersehbare Testdaten verwenden können.
Siehe auch
Konzepte
Verwalten von Datenbankänderungen
Erweiterbarkeit in der Database Edition
Übersicht über die Terminologie der Database Edition
Gewusst wie in Database Edition
Übersicht über die Terminologie der Database Edition