Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* * * Banco de Dados Visão (View) Luciana Vieira * * * Visão: Uma definição Uma visão (view) é uma tabela virtual cujo conteúdo foi definido por uma consulta (query) as tabelas reais de um banco de dados. Não é criada uma tabela física, somente a definição da visão é armazenada no banco de dados. * * * Vantagens do Uso de Visões Facilidade de uso: Permite diminuir o tamanho e complexidade dos comandos SELECT para os usuários, mostrando somente as informações pertinentes. Segurança: Restringe as colunas que podem ser acessadas pelo usuário. * * * Criando uma VIEW Para criar uma visão utilize o Comando SQL CREATE VIEW Sintaxe: CREATE VIEW nome [(col [,col …])] AS <select> [WITH CHECK OPTION]; * * * Importante sobre as Visões Uma visão pode fazer uso de dados de outra visão. * * * Exemplo Crie uma visão denominada vw_Consulta que liste o nome dos Paciente que estão com Consulta marcada e para que Médicos, e a especialidade do médico. Liste a Data e Hora da consulta Médicos (CRM, nome, idade, cidade, especialidade, número) Pacientes (RG, nome, idade, cidade, doenca) Consultas (CRM, RG, data, hora) * * * Exemplo SELECT m.Nome as Medico, m.especialidade, p.nome as paciente, c.data, c.hora FROM CONSULTA C INNER JOIN MEDICO M INNER JOIN PACIENTE P ON C.MEDICO_CRM=M.CRM AND C.PACIENTE_RGPACIENTE=P.RGPACIENTE; * * Exemplo * * * Trabalhando com uma visão Depois de criada uma visão funciona como se fosse uma tabela real. * * * Trabalhando com uma visão Selecionando os paciente da dra Maria para o dia 15-04-2011. * * * Exemplo Crie uma visão denominada vw_AmbulatorioMedico que liste o nome dos Medicos e que ambulatório eles atender e o andar. Na view visualize em que andar fica o ambulatório da Médica CELINA. * * * Modificando dados através de uma Visão Caso a visão não seja somente para leitura (read only) é possível utilizar os comandos INSERT, UPDATE e DELETE para modificar dados de uma visão. Para que a visão possa ser alterada é necessário que: A visão utilize somente uma tabela. Todas as colunas não incluídas na visão aceitem valores NULL. O comando SELECT não inclua subconsultas, DISTINCT, HAVING, funções de agregação ou junções. * * * MODIFICANDO VIEW * * * MODIFICANDO VIEW insert into vw_paciente values ('JULIA',17,7); * * * MODIFICANDO VIEW DELETE FROM vw_paciente WHERE RGPaciente = 7; * * * MODIFICANDO VIEW UPDATE vw_paciente SET idade = 37 WHERE RGPaciente = 5; * * * Excluindo uma visão Para excluir uma visão utilize o comando DROP VIEW. Sintaxe: DROP VIEW <nome_da_visão> Ex: DROP VIEW vw_Consulta; * * * Exercício Crie uma VIEW que: No banco trilhasonora, mostre o nome do disco, os nomes das músicas e o gênero musical de cada disco. Faça uma consulta que mostre qual é o nome gênero e quantas músicas gravadas em disco são de cada gênero. Mostre o nome do gênero musical mais gravado. * * * Exercício * * * Exercício Crie uma VIEW que: mostre o nome de cada artista, quais músicas ele tem função e que tipo de função. Listar quais os nomes das músicas onde o artista que é o Cantor também é o Baterista”. Conte quantos Artistas tem mais de uma função para cada musica * * * Exercício 4) Quantos artistas são da cidade de Belém 5) Qual o artista mais velho 6) Quantos artista nasceram no mesmo ano * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *