(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

DP-900: compreender e usar vistas em Azure SQL Database

João Barros 18 de August de 2026 4 min de leitura

Vou ensinar a competência de criar e usar vistas (views) em Azure SQL Database — um tema útil no DP-900 porque demonstra compreensão de abstracção e optimização de consultas em dados relacionais, e é prático no desenho de soluções seguras e geríveis na nuvem.

O que precisas de saber

Uma view é uma consulta armazenada que aparece ao utilizador como uma tabela virtual. Não guarda dados (excepto se for uma view indexada/materializada, que é menos comum em Azure SQL Database), mas simplifica o acesso a dados complexos, encapsula lógica e pode reforçar a segurança ao expor apenas colunas/linhas específicas.

Exemplo conceptual: suponha duas tabelas, Customers e Orders. Para obter o total de encomendas por cliente, podes criar uma view que faça o join e a agregação. Quem usa a view não precisa de conhecer os detalhes do join ou das funções agregadas.

CREATE VIEW Sales.CustomerOrderTotals AS
SELECT c.CustomerID,
       c.Name,
       SUM(o.TotalAmount) AS TotalOrders
FROM dbo.Customers c
JOIN dbo.Orders o ON c.CustomerID = o.CustomerID
GROUP BY c.CustomerID, c.Name;

Depois de criada, podes consultar: SELECT * FROM Sales.CustomerOrderTotals WHERE TotalOrders > 1000;

Como funciona / Na prática

Pontos práticos e passos para usar views no Azure SQL Database:

  1. Modela a necessidade: define se a view é para simplificar queries, impor regras de segurança (expor apenas certas colunas) ou para compatibilizar esquema entre aplicações.
  2. Escreve a query base: testa a query SELECT que vai ser a definição da view, optimizando joins e filtros antes de criar a view.
  3. Cria a view: usa CREATE VIEW schema.Name AS <select>. Preferencialmente qualifica nomes com schema (dbo, Sales...).
  4. Usa a view como se fosse uma tabela: podes fazer SELECT, JOIN e até aplicar filtros. Nota que o desempenho depende da query subjacente — a view não reduz automaticamente custos de execução.
  5. Actualizações via view: algumas views são actualizáveis (podem ser usadas em INSERT/UPDATE/DELETE) se cumprem regras (por exemplo, uma única tabela sem agregações). Se a view não for actualizável, usa stored procedures ou DML directo nas tabelas base.
  6. Segurança: aplica permissões na view (GRANT SELECT ON Sales.CustomerOrderTotals TO ReportRole) para limitar o acesso às colunas sensíveis nas tabelas base.
  7. Verificação de desempenho: usa o Query Store e as ferramentas de diagnóstico do Azure SQL para analisar planos de execução da query que a view encapsula e evitar surpresas de desempenho.
-- Exemplo: conceder acesso somente à view
CREATE ROLE reporting_role;
GRANT SELECT ON Sales.CustomerOrderTotals TO reporting_role;
-- Não é necessário dar acesso directo às tabelas subjacentes

Erros comuns

1) Confiar que uma view melhora o desempenho por si só: a view é apenas uma camada de abstracção; o motor ainda executa a consulta subjacente. É necessário rever planos de execução.

2) Criar views com SELECT *: isto pode mascarar alterações de esquema e trazer colunas desnecessárias, afectando consumo de rede e aplicações. Define explicitamente colunas.

3) Usar views complexas e aninhadas sem considerar actualizações de dados e manutenção: views com agregações e joins complexos podem dificultar a depuração e tornar a manutenção mais dispendiosa. Documenta e testa cada nível.

Como praticar

Passos práticos para exercício com recursos oficiais:

  1. Cria uma instância de Azure SQL Database (podes usar a camada gratuita/tempo limitado ou um ambiente de desenvolvimento local com SQL Server Express para aprender a sintaxe).
  2. Cria tabelas de exemplo (Customers, Orders, Products), popula com dados de teste e escreve queries SELECT que sintetizem informação.
  3. Transforma essas queries em views, aplica permissões e testa cenários de leitura e escrita (quando aplicável).
  4. Analisa planos de execução e usa o Query Store para comparar desempenho de consultas directas vs via view.

Para alinhamento com o exame DP-900, pratica também com os recursos oficiais: faz o Practice Assessment OFICIAL gratuito da Microsoft e consulta o study guide oficial (ambos gratuitos). Estes recursos ajudam a verificar o conhecimento das áreas medidas pelo exame.

Em resumo

  • Uma view é uma tabela virtual que encapsula uma query — útil para simplificar acesso e aplicar segurança.
  • Views não melhoram automaticamente o desempenho; optimiza a query subjacente e usa ferramentas de diagnóstico do Azure SQL.
  • Evita SELECT * em views; especifica colunas e documenta a finalidade de cada view.
  • Pratica em Azure SQL Database, usa Query Store e experimenta a concessão de permissões sobre views em vez de tabelas base.