Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Nachdem eine Sicht definiert wurde, können Sie ihre Definition in SQL Server 2012 ändern, ohne die Sicht mithilfe von SQL Server Management Studio oder Transact-SQL löschen und neu erstellen zu müssen.
In diesem Thema
Vorbereitungen:
Einschränkungen
Sicherheit
So ändern Sie eine Sicht mit:
SQL Server Management Studio
Transact-SQL
Vorbereitungen
Einschränkungen
Das Ändern einer Sicht hat keine Auswirkungen auf abhängige Objekte, z. B. gespeicherte Prozeduren oder Trigger, es sei denn, die Definition der Sicht wird so geändert, dass das abhängige Objekt nicht mehr gültig ist.
Wird eine derzeit verwendete Sicht mithilfe von ALTER VIEW geändert, belegt Database Engine (Datenbankmodul) die Sicht mit einer exklusiven Schemasperre. Wenn die Sperre erteilt wird und keine aktiven Benutzer der Sicht vorhanden sind, löscht Database Engine (Datenbankmodul) 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.
Sicherheit
Berechtigungen
Für die Ausführung von ALTER VIEW wird zumindest die ALTER-Berechtigung für OBJECT benötigt.
[Top]
Verwendung von SQL Server Management Studio
So ändern Sie eine Sicht
Klicken Sie im Objekt-Explorer auf das Pluszeichen neben der Datenbank, in der sich die Sicht befindet, und klicken Sie dann auf das Pluszeichen neben dem Ordner Sichten.
Klicken Sie mit der rechten Maustaste auf die Sicht, die Sie ändern möchten, und klicken Sie dann 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 Sicht 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.
Klicken Sie im Menü Datei auf view name speichern.
[Top]
Verwendung von Transact-SQL
So ändern Sie eine Sicht
Stellen Sie im Objekt-Explorer eine Verbindung zu einer Instanz von Database Engine (Datenbankmodul) her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie 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 AdventureWorks2012 ; GO -- Create a view. CREATE VIEW HumanResources.EmployeeHireDate AS SELECT p.FirstName, p.LastName, e.HireDate FROM HumanResources.Employee AS e 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 JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID WHERE HireDate < CONVERT(DATETIME,'20020101',101) ; GO
Weitere Informationen finden Sie unter ALTER VIEW (Transact-SQL).
[Top]