vistas en mysql

12

Click here to load reader

Upload: eduardo-ed

Post on 07-Jul-2015

2.157 views

Category:

Technology


0 download

DESCRIPTION

Vistas en MYSQL

TRANSCRIPT

Page 1: Vistas en mySql

Samuel Fuentes Navalón

Laura Daza Moya

Eduardo Anguita Pino

Page 2: Vistas en mySql

-En teoría de bases de datos, una vista es una

consulta accesible como una tabla virtual en una base de datos relacional o en un conjunto de documentos en una base de datos orientada a documentos.

-Las vistas tienen la misma estructura que una tabla: filas y columnas.

-Una vista es un objeto de la base de datos que se define mediante un SELECT que agrupa o selecciona un conjunto de datos.

DEFINICIÓN

Page 3: Vistas en mySql

CREATE [OR REPLACE] [ALGORITHM =

{UNDEFINED | MERGE | TEMPTABLE}]

VIEW nombre_de_vista [(columnas)]

AS sentencia_select

-Esta sentencia crea una vista nueva o reemplaza un a existente si se incluye la cláusula OR REPLACE. La sentencia_select es una sentencia select que proporciona la definición de la vista.

SINTAXIS

Page 4: Vistas en mySql

-Toda vista pertenece a una base de datos. Para crear

una vista en una base de datos específica indicarla con base_de_datos.nombre_vista.

-Al igual que las tablas, las vistas no pueden tener nombres de columnas duplicados.

-Las vistas pueden crearse a partir de varios tipos de sentencias SELECT. Pueden hacer referencia a tablas o a otras vistas. Pueden usar combinaciones, UNION, y subconsultas. El SELECT inclusive no necesita hacer referencia a otras tablas.

DATOS DE INTERÉS

Page 5: Vistas en mySql

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.

MODIFICAR LAS VISTAS

Page 6: Vistas en mySql

Mediante la palabra clave “ALGORITHM” podemos

indicar como deseamos que funcione: UNDEFINED: Dejamos que sea MySQL quien decida el

algoritmo por si mismo, es el caso por defecto. MERGE: Se refiere a que junte la query que se hace sobre

la vista con la query de la vista y se ejecute la queryresultante. De esta manera vemos como la query que se ejecuta sobre una vista es tan complicada como la suma de las dos queries. Esto lo tenemos que tener muy en cuenta, ya que estamosocultando la query que realmente ejecuta MySQL

TEMPTABLE: En el momento de hacer una consulta sobre la vista se crea una tabla temporal.

ESPECIFICACIONES

Page 7: Vistas en mySql

El caso de TEMPTABLE tiene una gran ventaja y

una gran desventaja:

Desventaja: La vista no es actualizable, por lo que cualquier cambio se deberá hacer en la tabla original.

Ventaja: Los bloqueos se liberan antes, ya que la consulta de la vista se hace a partir de la tabla temporal. Esto permite que otros threads accedan antes a la tabla que ejecutando una consulta mucho más pesada usando el algoritmo MERGE.

TEMPTABLE VENTAJAS Y DESVENTAJAS

Page 8: Vistas en mySql

A) Facilidad de manejo de grandes volúmenes de

información: la principal ventaja que proporciona la posesión de una base de datos informatizada frente a las técnicas convencionales de archivo es, fundamentalmente, la facilidad de poder manejar una gran cantidad de información, a gran velocidad y en muy poca cantidad de tiempo, que de otro modo seria muy dificultoso, por no decir casi imposible, utilizar de manear correcta.

VENTAJAS

Page 9: Vistas en mySql

B) Seguridad de la información: Uno de los

objetivos fundamentales de las bases de datos es mantener accesible, a todos los usuarios autorizados, la información que almacenan. Este objetivo se consigue a través de los sistemas gestores de bases de datos (SGBD).

C) No duplicidad de la información: La existencia de información duplicada en cualquier tipo de fichero origina graves problemas por el aumento de información almacenada y la escasez de espacio existente.

VENTAJAS

Page 10: Vistas en mySql

D) Mejora la metodología de trabajo en una

organización: En algunos casos, la introducción de una base de datos en las tareas cotidianas de una organización supone que el análisis de los requisitos a cumplir por el nuevo sistema da lugar a que se descubran problemas en la metodología interna de una empresa.

VENTAJAS

Page 11: Vistas en mySql

E) Facilidad en la toma de decisiones: La ventaja

más importante de la utilización de una base de datos es que permite realizar consultas de la información que contiene de forma rápida, sencilla y útil. Esta facilidad en el manejo y recuperación de la información almacenada permitirá, a su vez, poseer una serie de datos actualizados sobre los que poder tomar una decisión correcta en un momento en que sea necesario tener más información de la que se disponga.

VENTAJAS

Page 12: Vistas en mySql

CREATE VIEW accede_Cursos AS SELECT

nomCurso FROM CURSOS WHERE Horas>300 && MaxAlumn>100;

SELECT * FROM accede_Cursos; (RESULTADO DE LA VISTA)

CREATE VIEW ordena_Cursos AS SELECT nomCurso, codCurso, fechaInic, fechaFin, horas FROM CURSOS ORDER BY nomCurso DESC;

EJEMPLOS: