top of page

Tratando Vistas en SQL


No se le permite a los usuarios trabajar de primera mano sobre las tablas y los motivos son:

  • Por la seguridad, ya que podemos eliminar datos importantes.

  • Prevenir errores del usuario.


Para lo cual se les ofrece las vistas.


Una vista, aunque se parezca a una tabla no lo es.


Es una consulta a una o varias tablas a las que se le asigna un nombre.


Nos permitirĆ” que los datos de la consulta los podamos tratar como si fuese una tabla.


CaracterĆ­sticas de la estructura de una vista:

  • No es de obligaciĆ³n que la vista tenga todas las columnas de una tabla.

  • Le vamos a poder asignar la columna o columnas que deseemos de una o varias tablas.

  • No es de obligaciĆ³n que contenga todos los registros de las tablas.

  • Podemos crear filtrando los registros.

  • La vista realmente no contiene datos fĆ­sicos, lo que consulta la tabla para recuperar los datos.

  • Cuando se realiza una operaciĆ³n DML sobre una vista, realmente se aplica a las tablas origen.


Con las vistas se ofrece al usuario final:

  • Simplificar el SQL.

  • Mejorar la comprensiĆ³n de los datos de las tablas, utilizando nombres de columnas mĆ”s simples o intuitivas.


Existen 2 tipos de vistas:

  • Vistas simples:

    • se crean con los datos de una Ćŗnica tabla y se le puede realizar sentencia DML.


  • Vistas complejas:

    • Se crean con los datos de una o varias tablas utilizando joins.

    • Generalmente no se le puede realizar sentencias DML.


CreaciĆ³n y opciones de vistas:


Sintaxis:

  • CREATE [or REPLACE] [FORCE | NOFORCE] VIEW nombre_vista AS subconsulta [WITH CKECK OPTION [CONSTRAINT nombre_restriccion]] [WITH READ ONLY [CONSTRAINT nombre_restriccion]]


Opciones:

  • OR REPLACE: suplanta la vista, si esta ya esta creada.

  • FORCE / NOFORCE: nos obliga a crear la vista aunque la tabla origen no exista.

  • WITH CKECK OPTION: si la vista se crea usando la clĆ”usula WHERE, no nos permitirĆ” realizar INSERT o UPDATES sobre registros que no son accesibles con la vista.

  • WITH READ ONLY: solo nos permitirĆ” realizar consultas sobre la vista, es decir impide realizar INSERT, UPDATE o DELETES.

  • CONSTRAINT: nos permite poner nombres a las restricciones para hacer mĆ”s legibles los mensajes de error asociados a su violaciĆ³n.









ModificaciĆ³n y opciones de vistas:


Sintaxis:

  • ALTER VIEW nombrevista [ADD | DROP RESTRICCION | COMPILE];

    • Opciones:

  • ADD: se usa para aƱadir una restricciĆ³n a la vista.

  • MODIFY CONSTRAINT: se usa para borrar una restricciĆ³n a la vista.

  • COMPILE: se usa para recompilar la vista.


EliminaciĆ³n de vistas:

  • Sintaxis:

DROP VIEW nombrevista;


Consultando una vista:


Sintaxis:


SELECT * From nombrevista;

  • Ejemplo: SELECT * From emp_details_view ORDER BY job_title;


oferta en cursos online
bottom of page