Questões de Concurso
Comentadas sobre visão (view) em banco de dados
Foram encontradas 88 questões
No contexto de bancos de dados, visão (view) é um objeto que consiste em uma lista organizada de todos os elementos de dados que são pertinentes para o sistema. A visão descreve entradas, saídas, composição de depósito de dados e cálculos intermediários.
View é um objeto que permite implementar a segurança em um banco de dados, omitindo dados irrelevantes para algum grupo de usuário. No entanto, não é permitido criar uma view com base na definição de outra view.
O uso de views materializadas permite aumentar o desempenho do banco de dados, pois minimiza o acesso às tabelas de dados e torna mais rápida a execução das consultas.
CREATE TABLE Loja (
idLoja INTEGER NOT NULL,
nomeLoja VARCHAR(45),
PRIMARY KEY(idLoja)
);
CREATE TABLE Filial (
idFilial INTEGER NOT NULL,
idLoja INTEGER NOT NULL,
cidadeFilial VARCHAR(45),
vendasFilial DOUBLE,
PRIMARY KEY(idFilial, idLoja),
FOREIGN KEY(idLoja)
REFERENCES Loja(idLoja)
);
Considere que na tabela Loja foram cadastrados os seguintes registros:
idLoja nomeLoja
1 A
2 B
3 C
Na tabela Filial, foram cadastrados os seguintes registros:
idFilial idLoja cidadeFilial vendasFilial
1 1 Campinas 120000
1 2 Campinas 35000
1 3 São Paulo 120000
2 1 Salvador 240000
2 2 Salvador 20000
3 1 Rio de Janeiro 60000
4 1 Curitiba 40000
Cidade Vendas
Campinas 155000
Curitiba 40000
Rio de Janeiro 60000
Salvador 260000
São Paulo 120000
Pode-se concluir corretamente que a view foi criada por meio da instrução
I. As visões fornecem segurança automática para dados ocultos, ou seja, dados não visíveis por uma determinada visão.
II. As visões não fornecem um recurso de abreviação para uma consulta.
III. As visões permitem que os mesmos dados sejam vistos por usuários diferentes de modos diferentes ao mesmo tempo.
IV. As visões podem fornecer independência de dados lógica.
Então, assinale a alternativa que contém todas as afirmações corretas.
Considere alguns tipos de construções SQL que podem ser empregadas na definição de uma coluna de uma view:
I. funções de agregação, tais como sum, avg
II. funções escalares, tais como sin, trim
III. expressões aritméticas
IV. expressões condicionais, tais como case
V. literais
VI. subconsultas
Está correto concluir que uma determinada coluna NÃO pode ser objeto de atualização quando resultar de qualquer dos tipos:
Tabela Loja
Cidade_Loja Vendas Data
Canoas 1500 05-Jan-2015
Porto Alegre 250 07-Jan-2015
Canoas 300 08-Jan-2015
Fortaleza 700 08-Jan-2015
Tabela Regiao
Regiao_Nome Cidade_Loja
Nordeste Fortaleza
Nordeste Sobral
Sul Canoas
Sul Porto Alegre
Considere que foi digitada a instrução seguinte para criar uma view com informações de vendas
CREATE VIEW VENDAS_REGIAO
AS SELECT t1.Regiao_Nome REGIÃO, SUM(t2.Vendas) VENDAS
FROM REGIAO t1, LOJA t2
WHERE t1.Cidade_Loja = t2.Cidade_Loja
GROUP BY t1.Regiao_Nome;
Para exibir o conteúdo desta view deve-se digitar o comando SQL
EMPREGADO
PNOME UNOME SSN DATANASC ENDERECO SALARIO SUPERSSN DNO
DEPARTAMENTO
DNOME DNUMERO GERSSN
PROJETO
PJNOME PNUMERO PLOCALIZACAO DNUM
TRABALHA_EM
ESSN PNO HORAS
V1: CREATE VIEW TRABALHA_EM1
AS SELECT PNOME, UNOME, PJNOME, HORAS
FROM EMPREGADO, PROJETO, TRABALHA_EM
WHERE SSN=ESSN AND PNO=PNUMERO;
V2: CREATE VIEW DEPT_INFO(DEPT_NOME, NO_EMPS, TOTAL_SAL)
AS SELECT DNOME, COUNT(*), SUM(SALARIO)
FROM DEPARTAMENTO, EMPREGADO
WHERE DNUMERO=DNO
GROUP BY DNOME;
QV1: SELECT PNOME, UNOME
FROM TRABALHA_EM1
WHERE PJNOME=’ProjetoX’
Com base no conhecimento sobre o conceito de visão em SQL, considere as seguintes afirmativas.
I. V1 não especifica nenhum novo nome de atributo para a visão TRABALHA_EM1. Nesse caso, TRABALHA_EM1 receberá os nomes dos atributos das tabelas de definição EMPREGADO, PROJETO E TRABALHA_EM.
II. V2 explicita novos nomes para os atributos da visão DEPT_INFO, usando a correspondência um a um entre os atributos especificados na cláusula CREATE VIEW e os especificados na cláusula SELECT da consulta que define a visão.
III. A consulta QV1 não funciona porque, para recuperar o último e o primeiro nome de todos os empregados que trabalham no ‘ProjetoX`, é necessária a formulação de duas junções usando as relações básicas EMPREGADO, PROJETO E TRABALHA_EM.
Assinale a alternativa CORRETA.
I. Visão é um objeto que não armazena dados, composto dinamicamente por uma consulta que é previamente analisada e otimizada.
II. Diferentemente de tabelas, visões não são objetos físicos, ou seja, não ocupam espaço em disco.
Está correto o que se afirma em:
Sobre essa tabela CLIENTES foi criada a visão VCLIENTES_RJ, que busca apresentar os clientes do estado do Rio de Janeiro. O comando de criação da visão VCLIENTES_RJ é:
CREATE VIEW VCLIENTES_RJ
AS SELECT ID, NOME, ENDERECO, CIDADE, UF
FROM CLIENTES WHERE UF = ‘RJ’
Um usuário submeteu o seguinte comando para execução pelo gerenciador do banco de dados:
UPDATE VCLIENTES_RJ SET NOME =’JOAO’
WHERE ID IN (1,2,3) AND UF = ‘SP’
O comando UPDATE acima, quando submetido para execução, resulta na atualização de: