Exemplarische Vorgehensweise: Ausführen von iterativer Datenbankentwicklung in einer isolierten Entwicklungsumgebung

In Exemplarische Vorgehensweise: Erstellen einer isolierten Umgebung für die Datenbankentwicklung haben Sie als Datenbankadministrator ein Datenbankprojekt erstellt und das Schema sowie die Datenbankobjektdefinitionen von einem Produktionsserver importiert. In der zweiten exemplarischen Vorgehensweise haben Sie Datenbankkomponententests erstellt, um vorhandene Funktionen zu überprüfen und eine neue Baseline festzulegen.

In dieser exemplarischen Vorgehensweise, der dritten und letzten dieser Serie, führen Sie eine typische iterative Entwicklungsaufgabe aus: das Umbenennen von zwei Datenbankspalten. Diese Änderungen nehmen Sie in einer isolierten Entwicklungsumgebung vor, um das Risiko für das restliche Team zu minimieren, bis die Änderungen freigegeben werden können.

In dieser exemplarischen Vorgehensweise werden u. a. die folgenden Aufgaben veranschaulicht:

  1. Verwenden der Datenbankumgestaltung, um Spalten umzubenennen und die Zeit für das Aktualisieren aller Verweise auf die Spalten sowie das Fehlerrisiko zu reduzieren.

  2. Ausführen von Datenbankkomponententests, um sicherzustellen, dass die Änderungen keine vorhandenen Funktionen beeinträchtigt haben.

  3. Einchecken der Änderungen in die Versionskontrolle, um sie für das restliche Team verfügbar zu machen.

Vorbereitungsmaßnahmen

Sie müssen Visual Studio Premium oder Visual Studio Ultimate installiert haben und über Zugriff auf die Beispieldatenbank AdventureWorks2008 für SQL Server 2008 verfügen. Außerdem wird in dieser exemplarischen Vorgehensweise davon ausgegangen, dass Sie Exemplarische Vorgehensweise: Erstellen einer isolierten Umgebung für die Datenbankentwicklung und Exemplarische Vorgehensweise: Einrichten eines Basisplans für die isolierte Entwicklungsumgebung ausgeführt haben.

Umbenennen von Datenbankspalten

Eine typische Entwicklungsaufgabe umfasst das Umbenennen von Datenbankobjekten. In dieser exemplarischen Vorgehensweise benennen Sie die Spalte BusinessEntityID in der Tabelle [HumanResources].[Employee] in BusinessEntityNumber um. Auf die Spalte BusinessEntityID wird in mehreren Fremdschlüsseln und gespeicherten Prozeduren verwiesen. Um die Änderung manuell vorzunehmen, müssen Sie mehrere Dateien ändern.

Bevor Sie Änderungen vornehmen, sollten Sie überprüfen, ob es sich bei dem Datenbankprojekt um die neueste Version handelt.

So rufen Sie die neueste Version des Datenbankprojekts ab

  1. Erweitern Sie im Team Explorer den Teamprojektknoten, der das Datenbankprojekt enthält.

  2. Öffnen Sie den Quellcodeverwaltungs-Explorer, indem Sie auf den Quellcodeverwaltungsknoten doppelklicken.

  3. Klicken Sie im Quellcodeverwaltungs-Explorer mit der rechten Maustaste auf das Datenbankprojekt, und klicken Sie dann auf Letzte Version abrufen.

    Die neueste Version der Projektmappe, die das Datenbankprojekt enthält, wird vom Computer abgerufen.

So benennen Sie BusinessEntityID in BusinessEntityNumber um

  1. Wenn die Projektmappe AdvWorksSandbox im Projektmappen-Explorer geöffnet ist, fahren Sie mit Schritt 4 fort.

  2. Zeigen Sie im Menü Datei auf Öffnen, und klicken Sie auf Projekt/Projektmappe.

    Das Dialogfeld Projekt öffnen wird angezeigt.

  3. Klicken Sie auf die Projektmappe AdvWorksSandbox und dann auf Öffnen. (Standardmäßig befindet sich diese Projektmappe unter Eigene Dateien\Visual Studio 2005\Projects\AdvWorksSandbox.)

    Die Projektmappe AdvWorksSandbox wird im Projektmappen-Explorer geöffnet.

  4. Öffnen Sie das Menü Ansicht, und klicken Sie auf Schemaansicht.

  5. Erweitern Sie in der Schemaansicht den Knoten AdvWorksSandbox, und erweitern Sie das Schema HumanResources und dann den Ordner Tabellen.

  6. Erweitern Sie im Ordner Tabellen die Tabelle Employee, und erweitern Sie dann den Ordner Spalten.

  7. Klicken Sie mit der rechten Maustaste auf den Ordner BusinessEntityID, zeigen Sie auf Umgestalten, und klicken Sie auf Umbenennen.

    Im Dialogfeld Umbenennen wird der vorhandene Spaltenname angezeigt.

  8. Geben Sie unter Neuer Name die Zeichenfolge BusinessEntityNumber ein.

  9. Aktivieren Sie das Kontrollkästchen Verweise in Schemaobjekten mit Warnungen oder Fehlern aktualisieren.

  10. Wenn das Kontrollkästchen Vorschau der Änderungen anzeigen nicht aktiviert ist, aktivieren Sie es, und klicken Sie auf OK.

    Im Dialogfeld Vorschau der Änderungen – Umbenennen werden alle Elemente im Projekt angezeigt, die auf die umzubenennende Spalte verweisen.

  11. Klicken Sie auf eine der Änderungen.

    Die Details der Änderung werden in Vorschau der Änderungen anzeigen angezeigt.

  12. Nachdem Sie die Änderungen überprüft haben, klicken Sie auf Übernehmen, um die Änderungen zu übernehmen.

    Alle geänderten Dateien werden aus der Versionskontrolle ausgecheckt.

Die ausstehenden Änderungen werden im Fenster Ausstehende Änderungen angezeigt. Die folgenden Dateien sollten im Fenster Ausstehende Änderungen angezeigt werden:

  • Employee.table.sql

  • ufnGetContactInformation.function.sql

  • uspGetEmployeeManagers.proc.sql

  • uspGetManagerEmployees.proc.sql

  • uspUpdateEmployeeHireInfo.proc.sql

  • uspUpdateEmployeeLogin.proc.sql

  • uspUpdateEmployeePersonalInfo.proc.sql

  • FK_EmployeeDepartmentHistory_Employee_BusinessEntityID.fkey.sql

  • FK_EmployeePayHistory_Employee_BusinessEntityID.fkey.sql

  • FK_Employee_Person_BusinessEntityID.fkey.sql

  • FK_JobCandidate_Employee_BusinessEntityID.fkey.sql

  • PK_Employee_BusinessEntityID.pkey.sql

  • vEmployee.view.sql

  • vEmployeeDepartment.view.sql

  • FK_Document_Employee_Owner.fkey.sql

  • FK_PurchaseOrderHeader_EmployeeID.fkey.sql

  • FK_SalesPerson_Employee_BusinessEntityID.fkey.sql

  • vSalesPerson.view.sql

  • vSalesPersonSalesByFiscalYears.view.sql

  • AWGenPlan.dgen

Ausführen von Datenbankkomponententests

Nachdem Sie Änderungen vorgenommen haben und bevor Sie die Anwendung in die Versionskontrolle einchecken, sollten Sie die Datenbankkomponententests ausführen, um vor der Freigabe dieser Änderungen für das Team sicherzustellen, dass die Anwendung weiterhin ordnungsgemäß funktioniert.

So führen Sie Datenbankkomponententests zum Identifizieren potenzieller Probleme aus

  1. Zeigen Sie im Menü Test auf Fenster, und klicken Sie dann auf Testansicht.

    Im Fenster Testansicht werden mehrere Tests aufgelistet. Standardmäßig werden die Tests ManualTest1 und TestMethod1 erstellt. Den Test dbo_ufpLeadingZeroTest haben Sie in der vorherigen exemplarischen Vorgehensweise erstellt.

  2. Wählen Sie dbo_ufpLeadingZeroTest aus, klicken Sie mit der rechten Maustaste darauf, und klicken Sie auf Auswahl ausführen.

  3. Im Fenster Testergebnisse werden die Ergebnisse angezeigt.

    Das Datenbankprojekt wird in der isolierten Entwicklungsumgebung bereitgestellt, die Testdaten werden generiert und der Test wird erfolgreich ausgeführt.

Vergleichen des Datenbankprojekts mit der Produktionsdatenbank

Sie können die Schemas des aktualisierten Datenbankprojekts und der Produktionsdatenbank vergleichen, um die Unterschiede zu ermitteln. Da Sie die Schemas lediglich vergleichen und nicht aktualisieren, können Sie eines der Schemas als Quelle oder Ziel des Vergleichs angeben.

So vergleichen Sie das Datenbankprojektschema mit der Produktionsdatenbank

  1. Zeigen Sie im Menü Daten auf Schemavergleich, und klicken Sie auf Neuer Schemavergleich.

    Das Dialogfeld Neuer Schemavergleich wird angezeigt.

  2. Übernehmen Sie die Standardwerte für das Quellschema.

    Das Datenbankprojekt AdvWorksSandbox ist angegeben.

  3. Klicken Sie unter Zielschema in der Liste Database auf die Verbindung mit der AdventureWorks-Datenbank, aus der Sie das Datenbankschema ursprünglich importiert haben, und klicken Sie dann auf OK.

    Die Schemas werden verglichen. Die einzigen Unterschiede sollten die Änderungen sein, die Sie im Rahmen dieser exemplarischen Vorgehensweise vorgenommen haben.

  4. Überprüfen Sie die Unterschiede zwischen den Schemas. Schließen Sie das Fenster Schemavergleich, wenn Sie fertig sind.

    Sie können die Änderungen jetzt für das Team freigeben.

Einchecken von Änderungen.

Nachdem Sie sichergestellt haben, dass alle Änderungen für die anderen Teammitglieder freigegeben werden können, checken Sie sie in die Versionskontrolle ein. Sie checken alle Änderungen in die Projektmappe ein. Dies umfasst i. d. R. das Datenbankprojekt, das Komponententestprojekt und sämtlichen zugeordneten Anwendungscode sowie Anwendungskomponententests.

So checken Sie die Änderungen ein und machen sie für das Team verfügbar

  1. Zeigen Sie im Menü Ansicht auf Weitere Fenster, und klicken Sie auf Ausstehende Änderungen.

    Das Fenster Ausstehende Änderungen wird angezeigt.

  2. Geben Sie unter Kommentar den Kommentar Spalte BusinessEntityID umbenannt ein.

  3. Klicken Sie im Fenster Ausstehende Änderungen auf der Symbolleiste auf Einchecken.

    Das Dialogfeld Eincheckstatus wird angezeigt, während das Datenbankprojekt und die darin enthaltenen Dateien in der Versionskontrolle eingecheckt sind. Die Symbole im Projektmappen-Explorer werden aktualisiert, um anzuzeigen, dass die Dateien in die Versionskontrolle eingecheckt wurden.

Nächste Schritte

Dieser iterative Prozess wird mehrfach für jede Version der Datenbank ausgeführt, die das Team in der Produktion bereitstellt. Jeder Entwickler nimmt isoliert Änderungen vor, testet diese, um deren Richtigkeit zu überprüfen, und gibt sie dann für das Team frei, indem die Aktualisierungen in die Versionskontrolle eingecheckt werden. Weitere Informationen zum Erstellen und Bereitstellen einer Datenbank finden Sie unter Erstellen und Bereitstellen von Datenbanken für eine isolierte Entwicklungsumgebung und Erstellen und Bereitstellen von Datenbanken für eine Staging- oder Produktionsumgebung.

Tipp

Wenn Sie die Bereitstellung auf dem Server vornehmen, von dem Sie ursprünglich AdventureWorks2008 importiert haben, tritt möglicherweise ein Fehler auf. Wenn ein Fehler angezeigt wird, in dem angegeben wird, dass Sie keine Datei erstellen können, weil diese bereits vorhanden ist, haben Sie möglicherweise in der ersten exemplarischen Vorgehensweise einen Schritt ausgelassen. Weitere Informationen finden Sie unter So stellen Sie das Projekt in der isolierten Entwicklungsumgebung bereit.

Weitere Informationen zu den Datenbankfunktionen für Visual Studio erhalten Sie, wenn Sie die ausführlicheren exemplarischen Vorgehensweisen für die jeweiligen Funktionsbereiche ausführen.

Siehe auch

Konzepte

Umgestalten von Datenbankcode und Daten

Ausführen von Datenbankkomponententests

Überprüfen von Datenbankcode mithilfe von Komponententests

Vergleichen und Synchronisieren von Datenbankschemas