Ändern von Ansichten
Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)
Nachdem Sie eine Ansicht definiert haben, können Sie die Definition im SQL Server-Datenbankmodul ändern, ohne die Ansicht mithilfe von SQL Server Management Studio oder Transact-SQL neu zu erstellen.
Beschränkungen und Einschränkungen
Das Ändern einer Ansicht wirkt sich nicht auf abhängige Objekte aus, z. B. gespeicherte Prozeduren oder Trigger, es sei denn, die Definition der Ansicht ändert sich so, dass das abhängige Objekt nicht mehr gültig ist.
Wird eine derzeit verwendete Sicht mithilfe von ALTER VIEW geändert, belegt Datenbank-Engine die Sicht mit einer exklusiven Schemasperre. Wenn die Sperre erteilt wird und keine aktiven Benutzer*innen der Sicht vorhanden sind, löscht die Datenbank-Engine alle Kopien der Sicht aus dem Prozedurcache. Vorhandene Pläne, die auf die Sicht verweisen, bleiben im Cache, werden aber beim Aufrufen erneut kompiliert.
ALTER VIEW kann auf indizierte Sichten angewendet werden; ALTER VIEW löscht jedoch vorbehaltlos alle Indizes in der Sicht.
Berechtigungen
Für die Ausführung von ALTER VIEW wird zumindest die ALTER-Berechtigung für OBJECT benötigt.
Verwenden Sie SQL Server Management Studio
Wählen Sie im Objekt-Explorer das Pluszeichen neben der Datenbank aus, in der sich Die Ansicht befindet, und wählen Sie dann das Pluszeichen neben dem Ordner "Ansichten" aus.
Klicken Sie mit der rechten Maustaste auf die Sicht, die Sie ändern möchten, und klicken Sie anschließend auf Entwurf.
Nehmen Sie im Diagrammbereich des Abfrage-Designers Änderungen an der Sicht vor, indem Sie eine oder mehrere der folgenden Vorgehensweisen anwenden:
Aktivieren oder deaktivieren Sie die Kontrollkästchen beliebiger Elemente, die Sie hinzufügen oder entfernen möchten.
Klicken Sie mit der rechten Maustaste innerhalb des Diagrammbereichs, wählen Sie die Option Tabelle hinzufügen..., und wählen Sie im Dialogfeld Tabelle hinzufügen dann die weiteren Spalten aus, die Sie der Ansicht hinzufügen möchten.
Klicken Sie mit der rechten Maustaste auf die Titelleiste der Tabelle, die Sie entfernen möchten, und wählen Sie die Option Entfernen.
Wählen Sie im Menü "Datei" die Option "Ansichtsname speichern" aus.
Verwenden von Transact-SQL
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel in das Abfragefenster, und klicken Sie dann auf Ausführen. Im Beispiel wird zuerst eine Sicht erstellt, und anschließend wird die Sicht mithilfe von ALTER VIEW geändert. Der Sichtdefinition wird eine WHERE-Klausel hinzugefügt.
USE AdventureWorks2022; GO -- Create a view CREATE VIEW HumanResources.EmployeeHireDate AS SELECT p.FirstName, p.LastName, e.HireDate FROM HumanResources.Employee AS e INNER JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID; -- Modify the view by adding a WHERE clause to limit the rows returned ALTER VIEW HumanResources.EmployeeHireDate AS SELECT p.FirstName, p.LastName, e.HireDate FROM HumanResources.Employee AS e INNER JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID WHERE HireDate < CONVERT(DATETIME, '20020101', 101); GO
Nächste Schritte
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für