No processo de realizar análises nos dados armazenados em um banco de dados relacional, o perito Charles está implementando diversas consultas SQL. Ele precisa acessar o resultado dessas consultas diversas vezes, como se fosse uma tabela, em um ciclo de refinamento analítico contínuo. Em um banco de dados relacional, para criar uma tabela virtual que represente o resultado de uma consulta SQL, Charles deve implementar um(a):
- A)VIEW;
Correta: VIEW cria uma tabela virtual baseada no resultado de uma consulta SQL, permitindo reutilização como se fosse uma tabela.
- B)TRIGGER;
Errada: TRIGGER é um gatilho executado automaticamente por eventos como INSERT, UPDATE ou DELETE.
- C)DOMAIN;
Errada: DOMAIN define um tipo de dado com restrições, não uma tabela virtual.
- D)SEQUENCE;
Errada: SEQUENCE gera valores sequenciais, normalmente para chaves ou numeração automática.
- E)FUNCTION.
Errada: FUNCTION executa uma rotina e pode retornar valor, mas não cria uma tabela virtual como resultado de consulta.
Gabarito: A
Quando você quer tratar o resultado de uma consulta SQL como se fosse uma tabela, a palavra-chave que vem à cabeça é VIEW. Ela cria uma tabela virtual, ou seja, não armazena os dados como uma tabela comum, mas guarda a definição da consulta e permite reutilizar esse resultado quantas vezes forem necessárias. Isso é ótimo em análises, porque facilita leitura, organização e reaproveitamento das consultas sem repetir o mesmo SQL toda hora. A ideia central é simples: tabela física guarda dados; visão guarda a consulta que gera esses dados. Em muitos bancos, a visão ainda ajuda a restringir o acesso a colunas ou linhas específicas, o que é um bônus bem útil. Na prática, ela funciona como uma janela para os dados, e não como um depósito novo de dados. Por isso o gabarito é A. A FGV costuma cobrar o conceito clássico de visão exatamente assim: um objeto de banco que representa o resultado de uma consulta SQL e pode ser consultado como tabela. Em modelagem e SQL, isso é bem consolidado na teoria de bancos de dados relacional. As demais alternativas fogem totalmente da ideia. TRIGGER é acionado por evento, DOMAIN define restrição de tipo, SEQUENCE gera números, e FUNCTION executa lógica e retorna valor, mas nenhuma delas cria uma tabela virtual derivada de consulta.