No SQL Server, você pode salvar uma consulta como uma exibição. As visualizações são benéficas por vários motivos, incluindo segurança, usabilidade e conveniência.
No SQL Server, uma visualização é uma tabela virtual cujo conteúdo é definido por uma consulta. É basicamente uma consulta pré-escrita que é armazenada no banco de dados.
Uma visualização consiste em um
SELECT
e quando você executa uma consulta na exibição, vê os resultados dela como faria ao abrir uma tabela. As exibições são chamadas de tabelas virtuais porque podem reunir dados de várias tabelas, bem como dados agregados, e apresentá-los como se fosse uma única tabela. Benefícios das visualizações
Uma visualização pode ser útil quando há vários usuários com diferentes níveis de acesso, que precisam ver partes dos dados no banco de dados (mas não necessariamente todos os dados). As visualizações podem fazer o seguinte:
- Restringir o acesso a linhas específicas em uma tabela
- Restringir o acesso a colunas específicas em uma tabela
- Junte colunas de várias tabelas e apresente-as como se fossem parte de uma única tabela
- Apresente informações agregadas (como os resultados do
COUNT()
função)
Como criar uma visualização
Para criar uma visualização, use o
CREATE VIEW
instrução, seguida pelo SELECT
demonstração. CREATE VIEW ViewName AS SELECT ...
Isso é tudo o que há para isso. Quando você executa essa instrução, a exibição é salva no banco de dados
Exemplo
Aqui está um exemplo de como criar uma visualização e, em seguida, selecionar dados dessa visualização.
-
Criar a visualização
Execute a instrução a seguir no banco de dados Music que criamos ao longo deste tutorial.
Este exemplo cria uma exibição chamada RockAlbums. Ele seleciona todos os álbuns que foram atribuídos a um gênero de "Rock".
CREATE VIEW RockAlbums AS SELECT AlbumName, ArtistName FROM Albums INNER JOIN Artists ON Albums.ArtistId = Artists.ArtistId INNER JOIN Genres ON Albums.GenreId = Genres.GenreId WHERE Genres.Genre = 'Rock';
-
Visualizar a Visualização
Expanda as Visualizações node sob o banco de dados aplicável para ver sua visualização recém-criada. Você também pode expandir os nós da exibição para ver as colunas incluídas em sua definição.
-
Executar a visualização
Agora que a visualização foi criada, você pode executá-la usando umSELECT
demonstração. Você pode selecionar tudo ou pode selecionar colunas específicas, restringir ainda mais os resultados com umWHERE
cláusula, etc
SELECT * FROM RockAlbums;
Alterar uma visualização
Você pode modificar sua visualização com o
ALTER VIEW
demonstração. Tudo o que você faz é fornecer a nova definição de visualização que gostaria de usar. Portanto, é quase como criar uma nova visualização com o
CREATE VIEW
instrução exceto que está alterando uma existente com o ALTER VIEW
demonstração. Aqui está um exemplo.
-
Alterar a visualização
Execute a seguinte instrução. Isso adiciona uma nova coluna à seleção da exibição (oReleaseDate
coluna).
ALTER VIEW RockAlbums AS SELECT AlbumName, ArtistName, ReleaseDate FROM Albums INNER JOIN Artists ON Albums.ArtistId = Artists.ArtistId INNER JOIN Genres ON Albums.GenreId = Genres.GenreId WHERE Genres.Genre = 'Rock';
-
Executar a visualização
Agora que adicionamos oReleaseDate
coluna para a exibição, podemos usar isso em nossas consultas SQL na exibição.
Por exemplo, podemos selecionar todos os álbuns cuja data de lançamento é posterior a uma determinada data.
SELECT * FROM RockAlbums WHERE ReleaseDate > '1985-01-01';