jueves, 22 de octubre de 2015

Vistas En SQL

Esta información es una recopilación del curso de Fundamentos de base de datos de la Academia virtual de Microsoft.


Crear nuevas entidades en SQl Server incluyen algunas entidades comunes.
A continuación se muestra una descripción de lo que se debe emplear en una base de datos a la hora de crearla y administrarla.



DATABASE
PROCEDURE
TABLE
TRIGGER
DEFAULT
VIEW
INDEX
USER
LOGIN
ROLE


VISTAS

Una vista es una alternativa para mostrar datos de varias tablas. Una vista es como una tabla virtual que almacena una consulta. Los datos accesibles a través de la vista no están almacenados en la base de datos como un objeto.
Las vistas permiten:

- ocultar información: permitiendo el acceso a algunos datos y manteniendo oculto el resto de la información que no se incluye en la vista. El usuario opera con los datos de una vista como si se tratara de una tabla, pudiendo modificar tales datos.

- simplificar la administración de los permisos de usuario: se pueden dar al usuario permisos para que solamente pueda acceder a los datos a través de vistas, en lugar de concederle permisos para acceder a ciertos campos, así se protegen las tablas base de cambios en su estructura.

- mejorar el rendimiento: se puede evitar tipear instrucciones repetidamente almacenando en una vista el resultado de una consulta compleja que incluya información de varias tablas.

Podemos crear vistas con: un subconjunto de registros y campos de una tabla; una unión de varias tablas; una combinación de varias tablas; un resumen estadístico de una tabla; un subconjunto de otra vista, combinación de vistas y tablas.



Una vista se define usando un "select".


La sintaxis básica parcial para crear una vista es la siguiente:

 create view NOMBREVISTA as
  SENTENCIASSELECT
   from TABLA;

El contenido de una vista se muestra con un "select":

 select *from NOMBREVISTA;
En el siguiente ejemplo creamos la vista "vista_empleados", que es resultado de una combinación en la cual se muestran 4 campos:

 create view vista_empleados as
  select (apellido+' '+e.nombre) as nombre,sexo,
   s.nombre as seccion, cantidadhijos
   from empleados as e
   join secciones as s
   on codigo=seccion

Para ver la información contenida en la vista creada anteriormente tipeamos:

 select *from vista_empleados;
Podemos realizar consultas a una vista como si se tratara de una tabla:

 select seccion,count(*) as cantidad
  from vista_empleados;



0 comentarios:

Publicar un comentario