adsense

sexta-feira, 5 de agosto de 2016

Criando views no Sql Server Básico.

Porquê criar uma view?


Uma view nada mais é do que uma tabela virtual pré-definida para que seja acessada por outro usuário ou sistema dentro do nosso banco de dados.

O principal objetivo de criar uma view é limitar o acesso a um database ou mesmo a uma tabela, pois não podemos inserir, alterar ou excluir dados dentro da view. Será possível apenas selecionar os dados da view.



Neste tutorial utilizaremos como exemplo uma tabela simples que armazena dados pessoais.

modelo da tabela pessoa
Modelo referente a tabela pessoa.

Tabela a ser criada.


Vamos supor que um gerente do departamento de marketing de uma empresa necessite que sua equipe acesse constantemente o nome e telefone dos clientes, porém ele não terá permissões para visualizar os demais dados cadastrais ou alterá-los.

A equipe de desenvolvimento não tem disponibilidade para desenvolver um novo módulo dentro do sistema da empresa, portanto precisa criar de uma forma rápida um relatório para que seja acessado pela equipe de marketing.

É aqui que entra a view, a equipe de desenvolvimento criará uma view com os dados necessários para equipe de marketing e dará acesso a apenas esta view, sem comprometer o acesso aos demais dados da empresa. 

Antes de mais nada, vamos criar a nossa tabela no Sql Server Express. Caso você não tenha ainda instalado o sql server, veja este Post de como instalar o sql server express.




Para criar a nossa tabela, usaremos o seguinte código sql:

create table pessoa(
  idpessoa int primary key identity,
  pessoa varchar(45) not null,
  telefone varchar(45),
  email varchar(145),
  cidade varchar(45),
  estado char(2),
  nascimento date,
  cpf char(11)
)


Vamos popular a nossa tabela, inserindo algumas pessoas na tabela.


insert into pessoa values('João','3333-4444','joao@joao.com','São José','PR','2001-01-01','11000123456')

insert into pessoa values('Pedro','2255-1144','pedro@pedro.com','Curitiba','PR','2001-03-01','99000123456')

insert into pessoa values('Paulo','1212-4566','paulo@paulo.com','São Paulo','SP','2010-03-01','88000123456')


insert into pessoa values('Maria','3030-4998','maria@maria.com','Curitiba','PR','1976-08-31','77000123456')


Vamos criar a nossa primeira view

O comando para criar uma view é igual ao de criação de qualquer objeto em um banco de dados


create view nomedaview as
select * from tabela

onde nomedaview será o nome que utilizaremos para nossa tabela virtual. Para facilitar a identificação de uma view no banco de dados, podemos incluir o prefixo vw_ antes do nome da view. Neste caso o nome da nossa view seria vw_pessoas.

Após o nome da view sempre incluiremos o as e o código sql que seleciona os dados necessários.


A nossa view ficará da seguinte forma:

create view vw_pessoa as
select nome, telefone from pessoas



Pronto, agora temos o nosso objeto view criado dentro do database. Para verificarmos as views já existentes, podemos utilizar o Object Explorer do sql server. Acesse o database e selecione a opção views (exibições) conforme o exemplo abaixo:



Para executar uma view, basta selecionar os dados utilizando o comando select como é feito em qualquer tabela.

select * from vw_pessoa




0 comments:

Postar um comentário

Promoções da Semana