You are here
Vistas en PostgreSQL Sin categoría 

Vistas en PostgreSQL

Vistas en PostgreSQL

             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.

 

Entonces, una vista almacena una consulta como un objeto para utilizarse posteriormente. Las tablas consultadas en una vista se llaman tablas base. En general, se puede dar un nombre a cualquier consulta y almacenarla como una vista.

 

 

¿Para que sirven las Vistas?

 

 

Las vistas sirven para:

 

  • Ocultar información: Con una vista se permite el acceso a algunos datos, manteniendo oculto el resto de la información que no se incluye en la vista. El usuario solo puede consultar la vista.
  • Simplificar la administración de los permisos de usuario: Permite 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.

 

 

¿Con que podemos crear una Vista?

 

  • Un subconjunto de registros y campos de una tabla.
  • Una unión de varias tablas.
  • Una combinación de varias tablas.
  • Un subconjunto de otra vista.
  • Combinación de vistas y tablas.

 

Notas Importantes:

 

  • Se pueden especificar consultas SQL en términos de una vista de la misma manera en que se especifica una consulta en una tabla base.
  • Las vistas no necesariamente existen en forma física.

 

 

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

 

CREATE VIEW nombre_vista AS

SELECT sentencias  FROM tabla;

 

 

 

 

Veamos por partes que quiere decir cada una de las partes que conforman la sentencia:

 

  Significado
CREATE VIEW Palabra clave que indica que la sentencia de SQL va a crear una nueva vista.
SELECT Selecciona los atributos que va a incluir en la vista.
FROM Indica la tabla que va a usar.

 

 

Ahora vamos a realizar un ejemplo para crear una vista, los pasos que seguiremos son los siguientes:

  • Crear una nueva Base de Datos.
  • Crear una tabla con nombre ‘Empleados’.
  • Agregar los siguientes atributos: cédula, apellido, nombre, sexo y cantidad de hijos.
  • Insertar datos a la tabla.
  • Una vez completados los pasos crearemos la siguiente vista:

 

 

CREATE VIEW vista_empleados as

SELECT nombre,sexo, cantidadhijos

FROM empleados;

 

 

 

Ejercicio:

 

Una empresa almacena la información de sus empleados en dos tablas llamadas “empleados” y “secciones”. Crear las tablas con los siguientes atributos:

 

  • Tabla ‘empleados‘: legajo, sexo,apellido, nombre, domicilio, seccion, cantidadhijos, estadocivil, fechaingreso. Esta tabla tiene como clave primaria el atributo legajo y sus valores son autoincrementales.
  • Tabla ‘secciones’: codigo, nombre, sueldo . Esta tabla tiene como clave primaria el atributo  codigo y sus valores son autoincrementales.

 

 

Ingresar los siguientes registros:

 

  • Para la tabla ‘secciones‘:

insert into secciones(nombre,sueldo) values(‘Administracion’,300);

insert into secciones(nombre,sueldo) values(‘Contaduría’,400);

insert into secciones(nombre,sueldo) values(‘Sistemas’,500);

 

 

 

 

 

  • Para la tabla ‘empleados‘:

insert into empleados

(documento,sexo,apellido,nombre,domicilio,seccion,cantidadhijos,estadocivil,fechaingreso)

values(‘22222222′,'f’,'Lopez’,'Ana’,'Colon 123′,1,2,'casado’,'1990-10-10′);

 

insert into empleados

(documento,sexo,apellido,nombre,domicilio,seccion,cantidadhijos,estadocivil,fechaingreso)

values(‘23333333′,'m’,'Lopez’,'Luis’,'Sucre 235′,1,0,'soltero’,'1990-02-10′);

 

insert into empleados

(documento,sexo,apellido,nombre,domicilio,seccion,cantidadhijos,estadocivil,fechaingreso)

values(‘24444444′,'m’,'Garcia’,'Marcos’,'Sarmiento 1234′,2,3,'divorciado’,'1998-07-12′);

 

insert into empleados

(documento,sexo,apellido,nombre,domicilio,seccion,cantidadhijos,estadocivil,fechaingreso)

values(‘25555555′,'m’,'Gomez’,'Pablo’,'Bulnes 321′,3,2,'casado’,'1998-10-09′);

 

insert into empleados

(documento,sexo,apellido,nombre,domicilio,seccion,cantidadhijos,estadocivil,fechaingreso)

values(‘26666666′,'f’,'Perez’,'Laura’,'Peru 1254′,3,3,'casado’,'2000-05-09′);

 

Se pide lo siguiente:

 

  • Crear una vista cuyo nombre sea vista_empleados_secciones.
  • La vista debe mostrar el nombre, apellido, sexo y cantidad de hijos de una persona.
  • Adicionalmente se debe mostrar el nombre de la sección a la que está asociada esa persona.
  • Mostrar el resultado de la vista.


Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros

Cursos y Diplomados de Tecnología Web visita www.uneweb.edu.ve  para más información

Related posts

Comments

Leave a Comment


*