Sdílet prostřednictvím


Exemplarische Vorgehensweise: Bereitstellen von Datenbankumgestaltungsänderungen

Aktualisiert: November 2007

Wenn Sie in Visual Studio Team System Database Edition arbeiten, ändern Sie eine Offlinedarstellung der Datenbank. Um einen Commit für diese Änderungen an einer tatsächlichen Datenbank auszuführen, müssen Sie das Datenbankprojekt erstellen und bereitstellen. Der Vorgang ist immer ähnlich, unabhängig davon, ob Sie die Änderungen in einer Entwicklungsdatenbank, einer Testdatenbank oder einer Produktionsdatenbank bereitstellen.

Aa833403.alert_note(de-de,VS.90).gifHinweis:

Der Bereitstellungsprozess ist für alle Arten von Datenbanken ähnlich. Die Bereitstellung könnte jedoch von einer anderen Person durchgeführt werden. In einigen Umgebungen verfügen beispielsweise nur Datenbankadministratoren (DBAs) über die Berechtigungen zum Bereitstellen in der Produktionsdatenbank.

In einer anderen exemplarischen Vorgehensweise (Exemplarische Vorgehensweise: Umbenennen einer Datenbankspalte) haben Sie ein Datenbankprojekt erstellt, das Schema der Northwind-Datenbank importiert und eine Spalte umbenannt. In dieser exemplarischen Vorgehensweise erstellen Sie diese Änderung und stellen sie bereit.

Vorbereitungsmaßnahmen

Um die exemplarische Vorgehensweise nachzuvollziehen, benötigen Sie:

So erstellen Sie das Datenbankprojekt

  1. Öffnen Sie das Datenbankprojekt "RefactorNorthwind", das Sie in Exemplarische Vorgehensweise: Umbenennen einer Datenbankspalte erstellt haben.

  2. Klicken Sie im Menü Erstellen auf Projektmappe erstellen.

  3. Im Fenster Fehlerliste werden möglicherweise Buildfehler angezeigt. Wenn beispielsweise mit einer gespeicherten Prozedur eine Spalte ausgewählt, jedoch nicht qualifiziert wird, und Sie diese Spalte umbenennen, wird der Name in der gespeicherten Prozedur nicht aktualisiert. Diese Situation führt zu einem Buildfehler, da mit der gespeicherten Prozedur nun ein Spaltenname ausgewählt wird, der nicht vorhanden ist. Stellen Sie zum Verhindern solcher Fehler sicher, dass die Namen im Transact-SQL (T-SQL)-Code voll qualifiziert werden. Zum Beheben dieser Fehler müssen Sie den Spaltennamen manuell aktualisieren. Wenn Sie die Spalte Orders.ShippedDate beispielsweise in Orders.ShippedDateAndTime umbenennen, müssen Sie die gespeicherte Prozedur Sales by Year manuell aktualisieren. Ändern Sie die folgende gespeicherte Prozedur:

    create procedure "Sales by Year" 
        @Beginning_Date DateTime, @Ending_Date DateTime AS
    SELECT Orders.ShippedDateAndTime, Orders.OrderID, "Order Subtotals".Subtotal, DATENAME(yy, ShippedDate) AS Year
    FROM Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID
    WHERE Orders.ShippedDateAndTime Between @Beginning_Date And @Ending_Date
    

    in folgende Prozedur:

    create procedure "Sales by Year" 
        @Beginning_Date DateTime, @Ending_Date DateTime AS
    SELECT Orders.ShippedDateAndTime, Orders.OrderID, "Order Subtotals".Subtotal, DATENAME(yy, Orders.ShippedDateAndTime) AS Year
    FROM Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID
    WHERE Orders.ShippedDateAndTime Between @Beginning_Date And @Ending_Date
    

So legen Sie die Bereitstellungseigenschaften für das Projekt fest

  1. Klicken Sie im Projektmappen-Explorer auf das Datenbankprojekt RefactorNorthwind.

  2. Klicken Sie im Menü Projekt auf Eigenschaften von RefactorNorthwind.

    Die Projekteigenschaften werden angezeigt.

  3. Klicken Sie auf die Registerkarte Erstellen.

  4. Klicken Sie auf die Schaltfläche ..., um das Dialogfeld Verbindungseigenschaften anzuzeigen.

  5. Legen Sie die Verbindungseigenschaften für die Datenbank fest, mit der Sie arbeiten möchten, und klicken Sie dann auf OK.

    Das Feld Zielverbindung wird mit der richtigen Verbindungszeichenfolge ausgefüllt.

    Aa833403.alert_caution(de-de,VS.90).gifVorsicht:

    Sie sollten diese Bereitstellung anhand einer Testdatenbank oder einer Entwicklungsdatenbank testen. Sie sollten diese Bereitstellung nicht anhand der Produktionsdatenbank testen.

  6. Geben Sie den Namen der Zieldatenbank im Feld Zieldatenbankname ein.

    Aa833403.alert_caution(de-de,VS.90).gifVorsicht:

    Standardmäßig wird das Feld Zieldatenbankname mit dem Namen des Datenbankprojekts ausgefüllt. Sie müssen dieses Feld ändern, wenn der Datenbankprojektname nicht der Zieldatenbankname ist.

  7. Aktivieren Sie das Kontrollkästchen DROP-Anweisungen für Objekte generieren, die sich in der Zieldatenbank, nicht aber im Datenbankprojekt befinden. Dieses Kontrollkästchen ist wichtig, wenn Sie z. B. eine Tabelle umbenennen. Das erstellte Bereitstellungsskript enthält eine DROP-Anweisung für die Tabelle mit dem alten Namen und eine CREATE TABLE-Anweisung für die Tabelle mit dem neuen Namen. Sie können das Kontrollkästchen DROP-Anweisungen für Objekte generieren, die sich in der Zieldatenbank, nicht aber im Datenbankprojekt befinden deaktivieren, um zu verhindern, dass die Tabelle mit dem alten Namen gelöscht wird. Dieser Ansatz ist eine von mehreren Möglichkeiten, um in dieser Situation mögliche Datenverluste zu verhindern. Weitere Informationen finden Sie unter Schützen von Daten während eines Umbenennungsvorgangs.

  8. Klicken Sie im Menü Datei auf Alle speichern.

  9. Klicken Sie im Menü Erstellen auf Projektmappe erstellen.

    Das Bereitstellungsskript wird auf Grundlage der von Ihnen festgelegten Projekteigenschaften erstellt. Der Status des Builds wird im Fenster Ausgabe angezeigt, und die letzte Zeile sollte Build: 1 erfolgreich oder aktuell lauten.

So stellen Sie das Datenbankprojekt bereit

  1. Zeigen Sie im Menü Datei auf Öffnen, und klicken Sie auf Datei.

    Das Dialogfeld Datei öffnen wird angezeigt.

  2. Geben Sie im Feld Dateiname die folgende Adresse ein, und klicken Sie dann auf Öffnen.

    IhrPfad\RefactorNorthwind\Sql\RefactoringDeploy.IhrServer.Northwind.sql

  3. Suchen Sie im Bereitstellungsskript die folgenden Zeilen:

    DROP TABLE [dbo].[Orders]

    und

    CREATE TABLE [dbo].[Orders]

    Diese Zeilen entsprechen der Umgestaltungsänderung, die Sie in der vorhergehenden exemplarischen Vorgehensweise vorgenommen haben. Sie können nun das Bereitstellungsskript ändern. Sie können z. B. DROP-Anweisungen löschen, die Sie nicht bereitstellen möchten. Weitere Informationen finden Sie unter Schützen von Daten während eines Umbenennungsvorgangs. Für diese exemplarische Vorgehensweise können Sie das Bereitstellungsskript ohne Änderungen verwenden.

    Aa833403.alert_caution(de-de,VS.90).gifVorsicht:

    Wenn Sie das Bereitstellungsskript ändern, müssen Sie es manuell bereitstellen, indem Sie es im T-SQL-Editor ausführen. Sie können es nicht mithilfe des Bereitstellungsbefehls bereitstellen.

  4. Schließen Sie das Bereitstellungsskript.

  5. Klicken Sie im Menü Ansicht auf Server-Explorer.

    Das Fenster Server-Explorer wird angezeigt, und die Zieldatenbank wird unter Datenverbindungen angezeigt. Wenn die Zieldatenbank nicht angezeigt wird, öffnen Sie das Menü Extras, und klicken Sie auf Verbindung zur Datenbank herstellen, um eine Verbindung mit der Zieldatenbank hinzuzufügen.

  6. Erweitern Sie in Server-Explorer die Zieldatenbank, erweitern Sie den Knoten Tabellen, und erweitern Sie die Tabelle Orders.

    Die Spalte ShippedDate wird mit dem ursprünglichen Namen angezeigt.

  7. Klicken Sie im Projektmappen-Explorer auf das Datenbankprojekt RefactorNorthwind.

  8. Klicken Sie im Menü Erstellen auf Bereitstellen. Sie können auch im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt klicken und anschließend auf Bereitstellen klicken.

    Aa833403.alert_caution(de-de,VS.90).gifVorsicht:

    Sie sollten diese Bereitstellung anhand einer Testdatenbank oder einer Entwicklungsdatenbank testen. Sie sollten diese Bereitstellung nicht anhand der Produktionsdatenbank testen.

    Das Datenbankprojekt wird mithilfe des Bereitstellungsskripts in der Zieldatenbank bereitgestellt. Der Status der Bereitstellung wird im Ausgabefenster angezeigt, wobei die letzte Zeile Die Bereitstellung war erfolgreich lauten sollte.

  9. Klicken Sie in Server-Explorer mit der rechten Maustaste auf den Knoten Tabellen, und klicken Sie anschließend auf Aktualisieren.

    Die Spalte ShippedDate wird mit dem neuen Namen ShippedDateAndTime angezeigt.

Siehe auch

Konzepte

Übersicht über Datenbankprojekteinstellungen

Weitere Ressourcen

Umgestalten von Datenbanken

Erstellen und Bereitstellen von Datenbankschemas