Questão de Banco de Dados — Visão (View) — VUNESP 2024
Banco de Dados›Visão (View)
Código
vu212103
Banca
VUNESP
Órgão
EsFCEx
Ano
2024
Cargo
CFO/QC ( )
O comando SQL para criar uma visão de nome Teste, a partir dos atributos C1 e C2 da tabela denominada Prova é:
ACREATE TABLE VISION Teste USING (C1, C2 FROM Prova);
BCREATE TABLE VIEW Teste AS SELECT C1, C2 FROM Prova;
CCREATE VISION Teste FROM Prova (C1, C2);
DCREATE VIEW Teste FROM Prova (C1, C2);
ECREATE VIEW Teste AS SELECT C1, C2 FROM Prova;
Revelar gabarito e comentário▾
GabaritoE — CREATE VIEW Teste AS SELECT C1, C2 FROM Prova;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Visão (View) no SQL: sintaxe do comando CREATE VIEW
Gabarito: letra E. O comando CREATE VIEW Teste AS SELECT C1, C2 FROM Prova; é a sintaxe padrão da linguagem SQL para criar uma visão (view), que consiste em uma consulta armazenada que retorna um subconjunto de dados de uma ou mais tabelas. A alternativa E é a única que apresenta a estrutura correta: CREATE VIEW seguido do nome da visão, a cláusula AS e a consulta SELECT que define o conteúdo da visão.
Uma visão (ou view) é um objeto de banco de dados que representa uma tabela virtual, ou seja, não armazena dados fisicamente, mas sim uma consulta pré-definida que é executada sempre que a visão é referenciada. Ela é criada a partir de uma consulta SQL sobre uma ou mais tabelas base, e pode ser utilizada para simplificar consultas complexas, fornecer uma camada de segurança (restringindo o acesso a determinadas colunas ou linhas) e apresentar os dados de uma forma mais adequada para determinados usuários.
A sintaxe básica para criar uma visão em SQL é:
CREATE VIEW nome_da_visao AS
SELECT coluna1, coluna2, ...
FROM nome_da_tabela
WHERE condicao;
Nesta questão, o comando deve criar uma visão chamada Teste a partir dos atributos C1 e C2 da tabela Prova. Como não há condição de filtragem, a cláusula WHERE não é necessária. Portanto, o comando correto é CREATE VIEW Teste AS SELECT C1, C2 FROM Prova;.
É importante destacar que a visão é um objeto do esquema do banco de dados, e sua criação é um comando de DDL (Data Definition Language), assim como CREATE TABLE, ALTER TABLE e DROP TABLE. A visão não ocupa espaço físico em disco, pois apenas armazena a definição da consulta no dicionário de dados.
A pegadinha desta questão está na confusão entre os comandos CREATE TABLE e CREATE VIEW, além do uso incorreto da palavra VISION (que não existe no SQL) e da sintaxe FROM Prova (C1, C2), que não é válida. A banca explora o conhecimento da sintaxe correta do comando CREATE VIEW, que exige a cláusula AS seguida da consulta SELECT.
CREATE VIEW
1Sintaxe correta
CREATE VIEW nome
AS SELECT colunas
FROM tabela
2Erros comuns
CREATE TABLE VIEW
CREATE VISION
FROM tabela (colunas)
USING (colunas)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
A alternativa A usa CREATE TABLE VISION, que mistura dois comandos diferentes: CREATE TABLE (para criar tabelas) e VISION (que não é uma palavra reservada do SQL). O correto seria CREATE VIEW. Além disso, a sintaxe USING (C1, C2 FROM Prova) não é válida para criar uma visão.
Alternativa B — ❌ Incorreta
A alternativa B usa CREATE TABLE VIEW, que é uma combinação incorreta. O comando correto é CREATE VIEW, sem a palavra TABLE. A sintaxe CREATE TABLE VIEW Teste AS SELECT C1, C2 FROM Prova; tentaria criar uma tabela chamada VIEW, o que não é o objetivo da questão.
Alternativa C — ❌ Incorreta
A alternativa C usa CREATE VISION, que não é um comando SQL válido. A palavra correta é VIEW, não VISION. Além disso, a sintaxe FROM Prova (C1, C2) não é a forma correta de especificar as colunas em uma visão; a definição deve ser feita através de uma consulta SELECT.
Alternativa D — ❌ Incorreta
A alternativa D usa CREATE VIEW Teste FROM Prova (C1, C2);, que está incorreta porque falta a cláusula AS e a consulta SELECT. A sintaxe correta exige CREATE VIEW nome AS SELECT ... FROM ..., não CREATE VIEW nome FROM tabela (colunas).
Alternativa E — ✅ Correta ⟵ GABARITO
A alternativa E apresenta a sintaxe correta: CREATE VIEW Teste AS SELECT C1, C2 FROM Prova;. O comando CREATE VIEW cria a visão, Teste é o nome da visão, AS introduz a consulta que define o conteúdo, e SELECT C1, C2 FROM Prova seleciona os atributos C1 e C2 da tabela Prova. Esta é a forma padrão de criar uma visão em SQL.