Visoesembd
817 palavras
4 páginas
Visões• O que são?
Visões
• Visões (view) = Tabelas virtuais
• Criadas a partir:
– Outras tabelas do banco de dados;
– Outras visões.
• Seu conteúdo é obtido através de:
– Consultas sobre uma ou mais tabelas (visões);
– Não são armazenadas fisicamente
• O SGBD armazena a sua definição.
Como definir(criar) uma visão?
• Exemplo: BD Clínica
– Criar uma visão cardiologista com o nome, sexo e data de nascimento dos médicos que são cardiologistas Create view vw_cardiologista as
Select nomem,sexo,dt_nasc
From medico
Where especialidade=“Cardiologista”;
Como acessar o conteúdo de uma visão? • Da mesma forma que é feito o acesso ao conteúdo de uma tabela.
Exemplo: Listar os dados dos cardiologistas que tem mais que 44 anos
Select *
From vw_cardiologista
Where dt_nasc<’1970-01-01’;
Vantagens
• Privacidade
• Foco e personalização de dados
• Uma tabela base pode ser vista de diferente formas • Controle de acesso aos dados pode ser restrito
– Determinadas linhas e a determinadas colunas
Vantagens
• O acesso pode ser restrito a apenas resumos estatísticos da tabela
– Somas, médias, contagens, etc.
• O acesso pode ser restrito a um subconjunto de uma outra visão.
• A visão pode ser definida por uma consulta complexa. Características das visões
• O conteúdo da visão é sempre atual.
• Uma visão pode ser definida a partir de uma outra visão.
• A definição da visão é armazenada no catálogo do sistema.
• A visão tem um comportamento semelhante a de uma tabela.
– Nem sempre é possível atualizá-la (UPDATE)
Sintaxe
Create view nome_da_visao(col1,col2, …)
As
Select col1,col2…-- nome das colunas na tabela base
From tabela1, tabela2 …
Where condicoes …
Obs: Se não for informado o nome das colunas da visão, ela será criada com os mesmos nomes da tabela de origem.
Criação de visões
• O setor de cardiologia de um hospital lida somente com pacientes cardiacos.
• Dessa forma, o DBA prentende disponibilizar através de uma visão somente os dados dos pacientes com esse