Umbenennen aller Verweise auf ein Datenbankobjekt

Sie können Verweise auf umbenannte Datenbankobjekte mit der Datenbankumgestaltung schneller und genauer aktualisieren. Wenn Sie ein Datenbankobjekt in einem Datenbankprojekt umbenennen, müssen Sie auch alle Verweise auf dieses Objekt aktualisieren, damit mit seinem neuen Namen darauf verwiesen wird. Sie müssen z. B. alle gespeicherten Prozeduren mit einem Verweis auf eine umbenannte Tabellenspalte aktualisieren.

Mit der Umgestaltung können Sie Verweise im gesamten Datenbankprojekt aktualisieren, ohne manuell nachzuverfolgen, welche Objekte voneinander abhängig sind, und die Verweise dann einzeln zu aktualisieren. Auch wenn Sie die Abhängigkeiten mithilfe von sp_depends suchen, werden die Informationen nicht immer richtig abgerufen, und Sie müssen jeden Verweis einzeln aktualisieren.

Sie können die folgenden Objekttypen mithilfe der Umgestaltung automatisch umbenennen:

  • Tabellen

  • Spalten in Tabellen, Sichten und Funktionen

  • Parameter gespeicherter Prozeduren

Mit der Umgestaltung können Sie außerdem Datengenerierungspläne, Skripts und Komponententests aktualisieren. Weitere Informationen finden Sie unter Überlegungen vor dem Umbenennen von Datenbankobjekten.

Standardmäßig werden über die Umgestaltung keine Objekte aktualisiert, deren Definitionen einen oder mehrere Warnungen oder Fehler verursachen. Außerdem wird mit der Umgestaltung der Name der SQL-Datei, die die Definition für ein umbenanntes Objekt enthält, nicht automatisch aktualisiert. Sie können die Datei manuell im Projektmappen-Explorer umbenennen.

Weitere Verwendungen der Umgestaltung mit Umbenennung

Mit der Umbenennungsumgestaltung können Sie zudem folgende gängige Aufgaben ausführen:

  • In einer Umgebung, in der die Groß-/Kleinschreibung keine Rolle spielt, können Sie die Groß-/Kleinschreibung eines Objektnamens und aller seiner Verweise so ändern, dass sie die Groß-/Kleinschreibungsanforderungen in Ihrer Organisation erfüllen. Beispiel: Werden in Ihrem Datenbankprojekt Verweise auf "Myid" und "MyID" verwendet, können Sie eine Umgestaltung mit Umbenennung durchführen, um alle Verweise in "MyID" zu ändern.

    Tipp

    Verweise, die bereits die richtige Groß-/Kleinschreibung beachten, werden außerdem (auf denselben Wert) aktualisiert. Wenn sich die Datei, die diese Verweise enthält, unter Versionskontrolle befindet, wird sie als Teil der Umgestaltungsoption ausgecheckt.

  • Sie können zwei oder mehr Objekte so umbenennen, dass ihre Namen und Verweise übereinstimmen. Sie können z. B. zwei Schemanamen wie "Person" und "Personenname" zusammenführen. Sie können auch zwei Namen zusammenführen, die sich in einer Umgebung mit Unterscheidung der Groß-/Kleinschreibung nur durch die Groß-/Kleinschreibung unterscheiden, z. B. "MyID" und "Myid".

  • Sie können einen Schemaobjektnamen und alle seine Verweise in eckige Klammern setzen, um die bewährten Methoden für die Umbenennung von Objekten zu befolgen. Beispiel: Sie können alle Verweise auf "MyID" durch "[MyID]" ersetzen.

    Tipp

    Verweise, die bereits in eckigen Klammern standen, werden ebenfalls (auf denselben Wert) aktualisiert. Wenn sich die Datei, die diese Verweise enthält, unter Versionskontrolle befindet, wird sie als Teil der Umgestaltungsoption ausgecheckt.

Wenn Sie diese Aufgaben ausführen, werden Sie in einer Fehlermeldung gewarnt, dass das Objekt mit diesem Namen bereits vorhanden ist. Sie müssen auf Ja klicken, um die Änderung vorzunehmen. Sie können jedoch einzelne Änderungen in einer Vorschau anzeigen und ausschließen, wenn Sie im Dialogfeld Umbenennen das Kontrollkästchen Vorschau der Änderungen aktiviert gelassen haben.

Beibehalten von beabsichtigten Änderungen mit dem Umgestaltungsprotokoll

Wenn Sie ein Datenbankobjekt umbenennen, wird dem Umgestaltungsprotokoll für das Datenbankprojekt ein Eintrag hinzugefügt. Wenn Sie die Änderungen bereitstellen, hilft dieses Protokoll sicherzustellen, dass das entsprechende Objekt in der Zielumgebung umbenannt wird, wie Sie beabsichtigt haben. Andernfalls würde das vorhandene Objekt gelöscht werden, und ein Objekt würde mit dem neuen Namen hinzugefügt werden. Das Protokoll wird in einer XML-Datei mit dem Namen ProjectName.refactorlog verwaltet. Sie checken diese Datei in das Versionskontrollsystem ein, wenn Sie die anderen Dateien einchecken, aus denen sich das Datenbankprojekt zusammensetzt. Die Datei ProjectName.refactorlog enthält nur Informationen zu Umgestaltungsvorgängen, die während der Bereitstellung besondere Behandlung erfordern.

Bereitstellung

Wenn Sie die Umgestaltung verwenden, aktualisieren Sie nur Ihr Datenbankprojekt anstelle einer Produktionsdatenbank. Mithilfe dieser Strategie nutzen Sie alle Vorteile von Datenbankprojekten, einschließlich der Versionskontrolle und der Teamentwicklung. Wenn Sie das Datenbankprojekt erstellen, werden alle Umgestaltungsprotokolldateien in die Datei transaction.refactorlog im Ordner \sql des Projekts eingefügt. Wenn Sie die Änderungen bereitstellen, hilft die zusammengeführte Umgestaltungsprotokolldatei dabei, Ihre beabsichtigten Änderungen am Datenbankprojekt beizubehalten.

Weitere Informationen finden Sie unter Erstellen und Bereitstellen von Datenbanken für eine isolierte Entwicklungsumgebung.

Tipp

In einer Teamumgebung sollten Sie Anwendungs- und Datenbankkomponententests ausführen, bevor Sie die Änderungen auf einem Produktionsserver bereitstellen. Weitere Informationen finden Sie unter Beginnen der Datenbankentwicklung im Team.

Überlegungen vor der Umbenennung

Bevor Sie Verweise auf ein Datenbankobjekt umbenennen, sollten Sie weitere Überlegungen berücksichtigen, wenn eine oder mehrere der folgenden Bedingungen zutreffen:

  • Sie möchten eine Spalte in einer Ansicht umbenennen.

  • Sie möchten ein Objekt in einem Datenbankprojekt umbenennen, das einen oder mehrere Fehler enthält, die eine erfolgreiche Erstellung verhindern.

  • Ein nicht gespeicherter Datengenerierungsplan ist noch geöffnet.

  • Im Projekt gibt es einen Datengenerierungsplan, der den datengebundenen Generator verwendet.

  • Sie verfügen über Datenbank-Komponententests, die keine vollqualifizierten Namen verwenden, und diese Tests verweisen auf Objekte in anderen Schemas oder Datenbanken.

  • Sie verfügen über Datenbankskripts im Projekt, die keine vollqualifizierten Namen verwenden, und diese Skripts verweisen auf Objekte in anderen Schemas oder Datenbanken.

Weitere Informationen zu den besonderen Überlegungen in diesen Szenarios finden Sie unter Überlegungen vor dem Umbenennen von Datenbankobjekten.

Allgemeine Aufgaben

In der folgenden Tabelle finden Sie die Beschreibungen häufiger Aufgaben, die dieses Szenario unterstützen, und Links zu weiteren Informationen zur erfolgreichen Ausführung dieser Aufgaben.

Aufgabe

Hilfreiche Themen

Praktische Erfahrung: Wenn Sie die Schritte der folgenden exemplarischen Vorgehensweise ausführen, können Sie sich mit dem Verschieben von Datenbankobjekten in ein anderes Schema sowie mit anderen Umgestaltungsarten vertraut machen. Wie Sie die Umgestaltung als Teil des Datenbankentwicklungszyklus verwenden können, erfahren Sie, wenn Sie die einführenden exemplarischen Vorgehensweisen nachvollziehen.

Umbenennen eines Datenbankobjekts: Mithilfe der Umgestaltung können Sie alle Verweise auf ein Datenbankobjekt im gesamten Datenbankprojekt ändern. Im Rahmen des Umgestaltungsvorgangs können Sie die Änderungen in der Vorschau anzeigen, bevor Sie sie übernehmen.

Rückgängigmachen eines Umgestaltungsvorgangs: Wenn Sie einen Umgestaltungsvorgang rückgängig machen müssen, ist dies in der aktuellen Visual Studio-Sitzung möglich.

Bereitstellen von Änderungen bei der Datenbankumgestaltung: Nachdem Sie das Datenbankprojekt umgestaltet haben, müssen Sie die Änderungen in einer Zieldatenbank bereitstellen. In der Regel stellen Sie die Änderungen in der isolierten Entwicklungsumgebung bereit, um sie vor dem Einchecken in die Versionskontrolle zu testen.

Problembehandlung: Hier erhalten Sie weitere Informationen zur Behandlung allgemeiner Probleme bei der Datenbankumgestaltung.

Ähnliche Szenarien

Umbenennen von Verweisen auf einen Server oder eine Datenbank

Verschieben eines Datenbankobjekts in ein anderes Schema

Vollqualifizierte Namen für Datenbankobjekte

Erweitern von Platzhalterzeichen in SELECT-Anweisungen

Siehe auch

Konzepte

Umgestalten von Datenbankcode und Daten

Übersicht über Datenbank- und Serverprojekte