martes, 22 de mayo de 2012

Vistas y Comandos en MYSQL

Una vista es un objeto de la base de datos que se define mediante una SELECT que agrupa o selecciona un conjunto de datos. Vamos a ver cómo usarlas.
Creando una vista: Se emplea la sentencia CREATE VIEW, que incluye una su consulta (subquery) para determinar los datos a ser mostrados a través de la vista.



Sintaxis:
CREATE [OR REPLACE] [FORCE | NOFORSE] VIEW <vista>

<alias>[, <alias>] … )]

AS <subconsulta>

[WITH CHECK OPTION [CONSYTAINT <restricción>]]

[WITH READ ONLY [CONSTRAINT <restricción>]];

Donde: OR REPLACE Se utilice por si la vista por si la vista ya estuviera creada anteriormente. 
En ese caso, la sustituye por la nueva definición.

FORCE Crea la vista sin comprobar si las tablas base existen.

NO FORCE Crea la vista sólo si las Tablas base de donde se extraen los datos existen realmente 
(es la opción por defecto).

<vista> Es el nombre de la vista.
< alias> Especifica alias para las expresiones /columnas seleccionadas por la subconsulta. El numero de alias debe coincidir con el numero de expresiones seleccionadas por la vista.

<subconsulta> Es una sentencia SELECT completa. Se pueden emplear alias para las columnas en la lista que sigue SELECT.
WITH CHECK

OPTION Especifica que solo las filas accesibles para la vista pueden ser insertadas o modificadas.

ONLY Asegura que no podrán ejecutarse operaciones de DML a través de la vista. La vista solo permite consultas. 

  • Visualizar la Estructura de Una Vista:

DESCRIBE <vista >;

Donde: <vista > Es el Nombre de la vista.

Listar las vistas existentes: SELECT¨ * FROM USER_VIEWS;

  • Modificando La Definición de Una Vista:

Para modificar no es necesario eliminarla previamente, basta con ejecutar una nueva sentencia CREATE VIEW que incluya la opcion “OR REPLACE” y la subconsulta Modificada.

Ejemplo: Cambiar la Vista EmpDepVentas creada en el apartado 3 para que incluya también el salario.

CREATE OR REPLACE VIEW EmpDepVentas
As SELECT apelidos, nombre, salario
FROM Empleados
WHERE dep=”Ventas”
WHIT CHECH OPTION;

  • Eliminando Una Vista.

Cuando ya no se emplea mas. Una Vista puede ser eliminada del esquema de la base de datos mediante la siguente orden:
DROP VIEW <vista >;
Donde <vista > Es el Nombre de la vista.

Ejemplo
DROP VIEW EmpDepVentas;

No hay comentarios:

Publicar un comentario