Scenariusze korzystania z widoków

Widoki są zazwyczaj używane do skoncentrowane, uproszczenia i dostosowywanie postrzeganie każdy użytkownik ma bazy danych.Widoki może służyć jako mechanizmy zabezpieczeń, umożliwiając użytkownikom dostęp do danych za pomocą widoku, bez udzielania użytkownikom uprawnień do uzyskania bezpośredniego dostępu do podstawowych tabel bazowych widoku.Widoki można udostępniają interfejs zgodny wstecz do tabela, która użyta do istnieje, ale którego Schemat uległ zmianie emulacji.Views can also be used when you copy data to and from Microsoft SQL Server to improve performance and to partition data.

Aby skoncentrować się na określonych danych

Widoki umożliwiają użytkownikom fokusu na określone dane, które ich interesy i określonych zadań, za które są odpowiedzialne.Dane poufne lub niepotrzebne można pozostawić z widoku.

Na przykład w widoku vBikes w AdventureWorks2008R2 przykładowej bazy danych o tym użytkownika, zobacz nazwy wszystkich rowerów, które są aktualnie w magazynie.Widok odfiltrowuje wszystkich pól z Product tabela, z wyjątkiem Namei zwraca tylko nazwy kompletnych rowerów zamiast części rowerowych.

CREATE VIEW vBikes AS
SELECT DISTINCT p.[Name] FROM Production.Product p
    JOIN Production.ProductInventory i ON p.ProductID = i.ProductID
    JOIN Production.ProductSubCategory ps 
        ON p.ProductSubcategoryID = ps.ProductSubCategoryID 
    JOIN Production.ProductCategory pc 
        ON (ps.ProductCategoryID = pc.ProductCategoryID 
            AND pc.Name = N'Bikes')
        AND i.Quantity > 0

Aby uprościć manipulacje danymi

Widoki można uprościć, jak użytkownicy pracować z danymi.Można zdefiniować często używanych sprzężeń, występów, kwerend składających i kwerend WYBIERAJĄCYCH jako widoki, dzięki czemu nie jest konieczne określenie warunków i kwalifikacje każdego czas dodatkowych operacji jest wykonywane na danych.Na przykład można utworzyć złożone kwerendy używane dla celów sprawozdawczości i wykonuje podkwerendy, sprzężenia zewnętrzne i agregacja do pobierania danych z grupy tabel w widoku.Widok upraszcza dostęp do danych, ponieważ kwerenda podstawowa nie trzeba zapisane lub przesłane co czas jest generowany raport; Widok jest zamiast tego kwerendy.Aby uzyskać informacje dotyczące manipulowania danymi, zobacz Podstawy kwerendy.

Chociaż złożoną kwerendę, Wyświetl vBikes w AdventureWorks2008R2 przykładowej bazy danych pozwala użytkownikom skupić się na określonych danych bez konieczności konstruowania klauzul sprzężenia, które są wymagane do utworzenia widoku.

Można również utworzyć wbudowane funkcje zdefiniowane przez użytkownika, które logicznie działają jako sparametryzowana widoków lub widoków, które mają parametry w klauzula WHERE warunków wyszukiwania lub innych części kwerendy.Aby uzyskać więcej informacji, zobacz Wbudowane funkcje zdefiniowane przez użytkownika.

Aby zapewnić zgodność z poprzednimi wersjami

Widoki umożliwiają tworzenie wstecznie zgodne interfejs dla tabela, gdy zmienia się jego schemat.Na przykład aplikacja zdefiniowano odwołania nonnormalized tabela, która ma następującego schematu:

Employee(Name, BirthDate, Salary, Department, BuildingName)

Aby uniknąć nadmiarowo przechowywania danych w bazie danych, może podjąć decyzję o znormalizowana tabela przez dzielenie go na dwie następujące tabele:

Employee2(Name, BirthDate, Salary, DeptId)

Department(DeptId, BuildingName)

Aby zapewnić interfejs zapewniającej, że nadal odwołuje dane z Employee, można usunąć starego Employee tabela i zastępuje następującym widoku:

CREATE VIEW Employee AS
SELECT Name, BirthDate, Salary, BuildingName
FROM Employee2 e, Department d
WHERE e.DeptId = d.DeptId

Aplikacje, które są używane do kwerendy Employee tabela można teraz, aby uzyskać dane z Employee Widok.Aplikacja ma być zmieniane, jeśli tylko odczytuje z Employee.Aplikacje, które aktualizują Employee mogą być czasami również obsługiwane przez dodanie zamiast wyzwalaczy do nowego widoku mapować operacji INSERT, DELETE i aktualizacja widok tabel podstawowych.Aby uzyskać więcej informacji, zobacz Projektowanie zamiast wyzwalaczy.

Aby dostosować dane

Widoki pozwalają różnym użytkownikom wyświetlanie danych na różne sposoby, nawet wtedy, gdy korzystają z tych samych danych w tym samym czas.Jest to szczególnie przydatne, gdy użytkownicy, którzy mają wiele różnych interesów i poziomu umiejętności współużytkowanie tej samej bazy danych.Na przykład widok można utworzyć pobierającej dane tylko dla klientów, z którymi zajmuje się Menedżera kont.Widok można ustalić na podstawie danych do pobierania identyfikator logowania Menedżera konta, który korzysta z widoku.

Do eksportowania i importowania danych

Widoki można eksportować dane do innych aplikacji.Na przykład, możesz użyć klienta i SalesOrderHeader tabel w AdventureWorks2008R2 bazy danych do analizowania danych sprzedaży za pomocą Microsoft programu Excel.Aby to zrobić, można utworzyć widok oparty na klienta i SalesOrderHeader tabele.Następnie można użyć bcp narzędzie do eksportowania danych zdefiniowanych w tym widoku.Dane również mogą być importowane do niektórych widoków z plików danych za pomocą bcp narzędzie lub WSTAW luzem instrukcja, zapewniając, że wiersze mogą być wstawiane do widoku za pomocą instrukcja INSERT.Aby uzyskać więcej informacji na temat ograniczeń kopiowania danych do widoków Zobacz INSERT (Transact-SQL).Aby uzyskać więcej informacji na temat używania bcp narzędzie i WSTAW luzem instrukcja do kopiowania danych do i z widoku, zobacz Eksportowanie danych z lub luzem importowanie danych do widoku luzem.

Do łączenia danych podzielonym na partycje na serwerach

Transact-SQL Operator Unii zestaw może być używany w widoku do połączenia wyniki dwóch lub więcej kwerend z osobnych tabelach pojedyncze zestaw wyniki.Pojawia się użytkownikowi jako pojedynczej tabela, która jest nazywany widokiem podzielonym na partycje.Na przykład jeśli jedna tabela zawiera dane dotyczące sprzedaży w Waszyngtonie i innej tabeli zawiera dane sprzedaży dla Kalifornii, widok można utworzyć z Unii tych tabel.Widok przedstawia dane sprzedaży dla obu regionów.

Aby użyć widoków partycji, tworzenia kilku tabel identyczne określający ograniczenia do określenia zakres danych, który można dodać do każdej tabela.Widok zostanie utworzona korzystającej z tych tabel bazowych.Gdy widok jest kwerenda, SQL Server automatycznie określa, które tabele dotyczy kwerendy i odwołuje się tylko te tabele.Na przykład kwerendy określa dane sprzedaży tylko dla stanu Waszyngton jest wymagane SQL Server odczytuje tylko tabela zawierającą dane sprzedaży w Waszyngtonie; dostęp do żadnych innych tabel.

Widoki podzielonym na partycje mogą być oparte na danych z wielu źródeł niejednorodnych, takich jak serwery zdalne, tworzenie federacji serwerów baz danych.Na przykład łączyć dane z różnych serwerów zdalnych, z których każda przechowuje dane dla różnych region organizacji, można tworzyć rozproszone kwerendy pobierające dane z każdego źródło danych, a następnie Utwórz widok oparty na tych kwerend rozproszonych.Wszystkie kwerendy odczytać tylko dane z tabel na serwerach zdalnych, które zawiera dane wymagane przez kwerendy; nie są dostępne inne serwery odwołuje kwerendami rozproszonymi w widoku.

Gdy dane są partycji na wielu serwerach, dostęp tylko część danych kwerendy mogą działać szybciej, ponieważ mniej danych do skanowania.Jeśli tabele znajdują się na różnych serwerach lub na komputerze, który używa wielu procesorów, równolegle zeskanowane można każdej tabela zaangażowanych w kwerendzie.Może to poprawić wydajność kwerendy.Ponadto zadań konserwacyjnych, takich jak Odbudowa indeksów lub tworzenie kopii zapasowych tabela, można wykonać szybciej.

Korzystając z widokiem podzielonym na partycje, dane nadal pojawia się jako pojedyncza tabela i mogą być wyszukiwane jako takie bez konieczności ręcznie odwołać poprawne tabela źródłowa.

Ostrzeżenie

Jest to preferowana metoda partycjonowanie danych lokalnych do jednego serwera tabel podzielonym na partycje.Aby uzyskać więcej informacji, zobacz Podzielonym na partycje tabel i indeksów.

Widoki podzielonym na partycje są aktualizowalny, jeżeli jest spełniony jeden z następujących warunków:

  • Wyzwalacza INSTEAD OF jest zdefiniowana w widoku z logiką, służący do obsługi instrukcji INSERT, UPDATE i DELETE.

  • Widoku i instrukcji INSERT, UPDATE i DELETE postępuj zgodnie z regułami określonymi dla aktualizowalnej widoków podzielonym na partycje.Aby uzyskać więcej informacji, zobacz Tworzenie widoków podzielonym na partycje.