Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Po zdefiniowaniu widoku można zmodyfikować jego definicję w aparacie bazy danych SQL Server bez usuwania ani ponownego tworzenia widoku, korzystając z SQL Server Management Studio lub Transact-SQL.
Ograniczenia i ograniczenia
Modyfikowanie widoku nie ma wpływu na żadne obiekty zależne, takie jak procedury składowane lub wyzwalacze, chyba że definicja widoku zmieni się w taki sposób, że obiekt zależny nie jest już prawidłowy.
Jeśli aktualnie używany widok jest modyfikowany przy użyciu funkcji ALTER VIEW, aparat bazy danych przyjmuje wyłączną blokadę schematu w widoku. Po udzieleniu blokady i braku aktywnych użytkowników widoku aparat bazy danych usuwa wszystkie kopie widoku z pamięci podręcznej procedury. Istniejące plany odwołujące się do widoku pozostają w pamięci podręcznej, ale są ponownie kompilowane, kiedy są wywoływane.
ALTER VIEW można stosować do widoków indeksowanych; jednak ALTER VIEW bezwarunkowo usuwa wszystkie indeksy w widoku.
Uprawnienia
Aby wykonać polecenie ALTER VIEW, wymagane jest co najmniej uprawnienie ALTER dla OBIEKTU.
Korzystanie z programu SQL Server Management Studio
W eksploratorze obiektów wybierz znak plus obok bazy danych, w której znajduje się widok, a następnie wybierz znak plus obok folderu widoki .
Kliknij prawym przyciskiem myszy widok, który chcesz zmodyfikować, i wybierz pozycję Design.
W okienku diagramu projektanta zapytań wprowadź zmiany w widoku na co najmniej jeden z następujących sposobów:
Zaznacz lub wyczyść pola wyboru wszystkich elementów, które chcesz dodać lub usunąć.
Kliknij prawym przyciskiem myszy w okienku diagramu, wybierz pozycję Dodaj tabelę..., a następnie wybierz dodatkowe kolumny, które chcesz dodać do widoku w oknie dialogowym Dodawanie tabeli .
Kliknij prawym przyciskiem myszy pasek tytułu tabeli, którą chcesz usunąć, a następnie wybierz pozycję Usuń.
W menu plik wybierz pozycję Zapisz nazwę widoku .
Korzystanie z Transact-SQL
W Eksploratorze Obiektów , nawiąż połączenie z wystąpieniem silnika bazy danych.
Na pasku Standardowym wybierz opcję Nowe zapytanie.
Skopiuj poniższy przykład i wklej go w oknie zapytania, a następnie wybierz pozycję Wykonaj. Przykład najpierw tworzy widok, a następnie modyfikuje widok przy użyciu funkcji ALTER VIEW. Klauzula WHERE jest dodawana do definicji widoku.
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