View atualizável SQL SERVER

Standard

Segue abaixo um exemplo de views atualizáveis, onde é apresentada a criação da mesma, alteração de estrutura e manipulação de dados de uma tabela através desta view, este exemplo foi criado pelo meu amigo Jord, achei o exemplo muito interessante e didático.

–CRIANDO O BANCO DE DADOS DE TESTE
CREATE DATABASE DB_TESTE
GO
–SETANDO O CONTEXTO PARA DB_TESTE
USE DB_TESTE
GO
–CRIANDO A TABELA TESTE
CREATE TABLE TESTE (OBS VARCHAR(10));
GO
—————————————
–CRIANDO A VIEW A PARTIR DA CONSULTA NA TABELA TESTE
CREATE VIEW VW_TESTE
AS
SELECT * FROM TESTE;
GO
—————————————
–CONSULTANDO A VIEW PARA VER QUE NÃO HÁ REGISTRO
SELECT * FROM VW_TESTE;
–INSERINDO O REGISTRO ATRAVES DA VIEW
INSERT INTO VW_TESTE VALUES(‘TESTE’);
—————————————
–CONSULTANDO A VIEW PARA VER O REGISTRO INSERIDO
SELECT * FROM VW_TESTE;
–UPDATE PELA VIEW
UPDATE VW_TESTE SET OBS = ‘ABCDEF’;
–CONSULTANDO A VIEW PARA VER O REGISTRO MODIFICADO
SELECT * FROM VW_TESTE;
—————————————
–DELETANDO PELA VIEW
DELETE FROM VW_TESTE;
–CONSULTANDO A VIEW PARA VER QUE O REGISTRO FOI APAGADO
SELECT * FROM VW_TESTE;
GO
—————————————
–ADICIONANDO NO CAMPO NA TABELA TESTE
ALTER TABLE TESTE ADD DATA DATETIME DEFAULT GETDATE();
GO
–DANDO O REFRESH NA VIEW PARA QUE A MESMA SEJA ATUALIZADA COM O NOVO CAMPO
EXEC SP_REFRESHVIEW VW_TESTE;
GO
–CONSULTANDO A VIEW PARA VER QUE O NOVO CAMPO ADICIONADO NA TABELA JÁ APARECE NA VIEW
SELECT * FROM VW_TESTE;
GO
—————————————
–SETANDO O CONTEXTO PARA O BANCO MASTER
USE MASTER;
GO
–DROPANDO O BANCO DE DADOS DB_TESTE
DROP DATABASE DB_TESTE;
GO

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *