Views Flashcards
O que é view?
É uma tabela virtual gerada a partir de outra(s) tabela física
Características das views
1) São formadas a partir das tabelas definidoras de view
2) protegem os dados
3) é uma tabela virtual
4) atualizações* (armazena a definição no sgbd, não copia dados)
5) dão foco e facilitam a experiência do usuário
6) aceitam comandos insert, update, delete
- = viajar, assunto amplo
Sintaxe
Sintaxe simples
1) criar e selecionar view normal
2) criar, alterar nome dos atributos originais e selecionar view normal
Sintaxe avançada
1) view de view*
2) view de múltiplas tabelas*
3) view de join*
4) view para atualizar tabelas definidoras*
- = viajar na sintaxe
- detalhe sintaxe atualização de view
Creat view (nome da view) (renomear atributos da view) AS
Select (atributos da tabela física)
From (nome da(s) tabela(s)
Where (Restrições)
Insert into (nome da view) values (valores separados por virgula)
■ caso os dados inseridos entrem em choque com a restrição da cláusula where, a atualização não é feita.
■ pode usar with check option
Critérios para atualização de views
1) ter chave primária ou candidata na lista de atributos
2) só uma tabela na cláusula from
3) não ter função de agregação ou count na cláusula select
4) não ter restrições que impeçam a atualização
5) não ter cláusulas group by e having
6) não ter join
Tipos de view
Simples
1) não ter funções de agregação
2) só ter uma tabela na cláusula from
3) aceita linguagem dml (insert, update, delete).
Complexa
1) tem funções de agregação
2) Mais de uma tabela na cláusula from
3) pode aceitar dml ou não (se for join não aceita, se não for join, aceita)
Viwe materializada o que é
É similar a view normal, mas ela guarda uma cópia dos dados após a primeira execução do código
Características das views materializadas
1) só está presente no postgresql e oracle
2) não é virtual, é tipo uma tabela física
3) é necessário realizar A MANUTENCAO DAS VIEWS quando as tabelas são atualizadas
4) ocupa espaço na memória (a normal Não ocupa, só é um comando)
Vantagens da view materializada
1) diminui a sobrecarga ao sgbd em caso de consultas recorrentes, que podem ser feitas na view materializada, já que os dados estão copiados e salvos
2) diminui a sobrecarga no sgbd quando consultas complexas e pesadas.
Código sintaxe view
Create + nome da view +
select as + nome da(s) coluna(s) +
from + tabela +
where + condição;