Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porZarita Jacobo Modificado hace 11 años
1
VISTAS (VIEWS) DEFINICIÓN Y OBJETIVO DE LAS VISTAS.
INSTRUCCIONES PARA LA ADMINISTRACIÓN DE VISTAS.
2
INSTRUCCIONES PARA LA ADMINISTRACION
DE VISTAS Creación o modificación de vistas con CREATE VIEW o ALTER VIEW. Eliminación de vistas con DROP VIEW. Obtención de información de definición de una vista (metadatos) con SHOW CREATE VIEW
3
Sintaxis de CREATE VIEW
* Toda vista pertenece a una base de datos. Por defecto, las vistas se crean en la base de datos actual. Para crear una vista en una base de datos específica: base_de_datos.nombre_vista al momento de crearla. mysql> CREATE VIEW test.v AS SELECT * FROM t; * Las tablas y las vistas comparten el mismo espacio de nombres en la base de datos, por eso, una base de datos no puede contener una tabla y una vista con el mismo nombre.
4
*las vistas no pueden tener nombres de columnas duplicados
* Para dar explícitamente un nombre a las columnas de la vista se utiliza la cláusula columnas para indicar una lista de nombres separados con comas. Las columnas devueltas por la sentencia SELECT pueden ser simples referencias a columnas de la tabla, pero también pueden ser expresiones conteniendo funciones, constantes, operadores, etc. Pueden usar combinaciones, UNION, y subconsultas. CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW nombre_vista [(columnas)] AS sentencia_select [WITH [CASCADED | LOCAL] CHECK OPTION]
5
En el siguiente ejemplo se define una vista que selecciona dos columnas de otra tabla, así como una expresión calculada a partir de ellas: mysql> CREATE TABLE t (qty INT, price INT); mysql> INSERT INTO t VALUES(3, 50); mysql> CREATE VIEW v AS SELECT qty, price, qty*price AS value FROM t; mysql> SELECT * FROM v; | qty | price | value | | | | |
6
La definición de una vista está sujeta a las siguientes limitaciones:
La sentencia SELECT no puede contener una subconsulta en su cláusula FROM. La sentencia SELECT no puede hacer referencia a variables del sistema o del usuario. La sentencia SELECT no puede hacer referencia a parámetros de sentencia preparados. Dentro de una rutina almacenada, la definición no puede hacer referencia a parámetros de la rutina o a variables locales. Las tablas mencionadas en la definición de la vista deben existir siempre. No se puede asociar un disparador con una vista.
7
Esta sentencia se introdujo en MySQL 5.0.1.
Sintaxis de ALTER VIEW ALTER [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW nombre_vista [(columnas)] AS sentencia_select [WITH [CASCADED | LOCAL] CHECK OPTION] Esta sentencia modifica la definición de una vista existente. La sintaxis es semejante a la empleada en CREATE VIEW. Se requiere que posea los permisos CREATE VIEW y DELETE para la vista, y algún privilegio en cada columna seleccionada por la sentencia SELECT. Esta sentencia se introdujo en MySQL
8
21.3. Sintaxis de DROP VIEW DROP VIEW [IF EXISTS]
nombre_vista [, nombre_vista] ... [RESTRICT | CASCADE] DROP VIEW elimina una o más vistas de la base de datos. Se debe poseer el privilegio DROP en cada vista a eliminar. La cláusula IF EXISTS se emplea para evitar que ocurra un error por intentar eliminar una vista inexistente. Cuando se utiliza esta cláusula, se genera una NOTE por cada vista inexistente.
9
21.4. Sintaxis de SHOW CREATE VIEW
SHOW CREATE VIEW nombre_vista mysql> SHOW CREATE VIEW v; | Table | Create Table | | v | CREATE VIEW `test`.`v` AS select 1 AS `a`,2 AS `b` |
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.