“AÑO DE LA CONSOLIDACIÓN DEL MAR DE GRAU”
FACULTAD DE INGENIERÍA
ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS Y TELEMÁTICA
ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS Y TELEMÁTICA
LENGUAJE DE PROGRAMACIÓN II
“TRABAJO DE INVESIGACIÓN”
VISTAS EN SQL
AUTORES
MARCHENA
HUANUIRE, Greinder Alexis
VASQUEZ
VENTURA, Liz Evelin
DOCENTE
PORRO
CHULLI, Marco Aurelio
BAGUA GRANDE -
AMAZONAS
2016
VISTAS EN SQL
DEFINICIÓN
En
teoría de bases de datos, una vista es una consulta que se presenta como una
tabla (virtual) a partir de un conjunto de tablas en una base de datos
relacional.
Las
vistas tienen la misma estructura que una tabla: filas y columnas. La única
diferencia es que sólo se almacena de ellas la definición, no los datos. Los
datos que se recuperan mediante una consulta a una vista se presentarán igual
que los de una tabla. De hecho, si no se sabe que se está trabajando con una
vista, nada hace suponer que es así. Al igual que sucede con una tabla, se
pueden insertar, actualizar, borrar y seleccionar datos en una vista. Aunque
siempre es posible seleccionar datos de una vista, en algunas condiciones
existen restricciones para realizar el resto de las operaciones sobre vistas.
Una
vista se especifica a través de una expresión de consulta (una sentencia
SELECT) que la calcula y que puede realizarse sobre una o más tablas. Sobre un
conjunto de tablas relacionales se puede trabajar con un número cualquiera de
vistas.
La
mayoría de los SGBD soportan la creación y manipulación de vistas. Las vistas
se crean cuando se necesitan hacer varias sentencias para devolver una tabla
final.
SINTAXIS
Las
vistas pueden considerarse como tablas virtuales. Generalmente hablando, una
tabla tiene un conjunto de definiciones, y almacena datos físicamente. Una
vista también tiene un conjunto de definiciones, que se construye en la parte
superior de la(s) tabla(s) u otra(s) vista(s), y no almacena datos físicamente.
La
sintaxis para la creación de una vista es la siguiente:
Caso de una sola tabla
CREATE
VIEW [nombre de la vista] AS SELECT (Aquí se especifican todos los campos a
mostrar) FROM [NOMBRE DE LA TABLA]
Caso de varias tablas
CREATE
VIEW [nombre de la vista] AS SELECT (Aquí se especifican todos los campos a
mostrar) FROM [NOMBRE DE LA 1° TABLA] INNER JOIN [NOMBRE DE LA 2° TABLA] ON
[Nombre del campo] . [NOMBRE DE LA 1° TABLA] = [Nombre del campo] . [NOMBRE DE
LA 2° TABLA]
ADMINISTRACIÓN DE VISTAS
CREACIÓN
Para
crear una vista debemos utilizar la sentencia CREATE VIEW, debiendo
proporcionar un nombre a la vista y una sentencia SQL SELECT válida.
CREATE
VIEW <nombre_vista> AS (<sentencia_select>);
Ejemplo:
Crear
una vista sobre nuestra tabla alquileres, en la que se nos muestre el nombre y
apellidos del cliente en lugar de su código.
CREATE VIEW vAlquileres AS
(
SELECT
nombre,
apellidos,
matricula
FROM
tAlquileres,
tClientes
WHERE
( tAlquileres.codigo_cliente = tClientes.codigo )
)
MODIFICACIÓN
Si
queremos, modificar la definición de nuestra vista podemos utilizar la
sentencia ALTER VIEW, de forma muy parecida a como lo hacíamos con las tablas.
En este caso queremos añadir los campos fx_alquiler y fx_devolucion a la vista.
ALTER
VIEW vAlquileres
AS
(
SELECT nombre,
apellidos,
matricula,
fx_alquiler,
fx_devolucion
FROM tAlquileres,
tClientes
WHERE
( tAlquileres.codigo_cliente = tClientes.codigo )
)
ELIMINACIÓN
Por
último podemos eliminar la vista a través de la sentencia DROP VIEW. Para
eliminar la vista que hemos creado anteriormente se utilizaría:
DROP
VIEW vAlquileres;
RESUMEN
Las
vistas suelen utilizarse para centrar, simplificar y personalizar la percepción
de la base de datos para cada usuario. Las vistas pueden emplearse como
mecanismos de seguridad, que permiten a los usuarios obtener acceso a los datos
por medio de la vista, pero no les conceden el permiso de obtener acceso
directo a las tablas base subyacente de la vista. Las vistas pueden utilizarse
para proporcionar una interfaz compatible con versiones anteriores con el fin
de emular una tabla que existía pero cuyo esquema ha cambiado. También pueden
utilizarse para copiar datos entre Microsoft SQL Server a fin de mejorar el
rendimiento y crear particiones de los datos.
SUMMARY
Views
are often used to center, simplify and customize the perception of the database
for each user. Views can be used as security mechanisms, which allow users to
gain access to data through the view, but do not grant them the permission to
gain direct access to the underlying base tables of the view. Views can be used
to provide an interface compatible with previous versions in order to emulate a
table that existed but whose schema has changed. They can also be used to copy
data between Microsoft SQL Server to improve performance and partition data.
RECOMENDACIONES
- Las vistas se crean en la base de datos activa.
- Al crear una vista, SQL Server verifica que existan las tablas a las que se hacen referencia en ella.
- Recomendamos probar la sentencia "select" con la cual definiremos la vista antes de crearla para asegurarnos que el resultado que retorna es el imaginado.
- Existen algunas restricciones para el uso de "create view", a saber:
-
no puede incluir las cláusulas "compute" ni "compute by" ni
la palabra clave "into";
-
no se pueden crear vistas temporales ni crear vistas sobre tablas temporales.
-
no se pueden asociar reglas ni valores por defecto a las vistas.
-
no puede combinarse con otras instrucciones en un mismo lote.
- Se pueden construir vistas sobre otras vistas.
CONCLUSIONES
No
siempre podremos actualizar los datos de una vista, dependerá de la complejidad
de la misma (dependerá de si el conjunto de resultados tiene acceso a la clave
principal de la tabla o no), y del gestor de base de datos. No todos los
gestores de bases de datos permiten actualizar vistas, ORACLE, por ejemplo, no
lo permite, mientras que SQL Server sí.
Las
vistas no tienen una copia física de los datos, son consultas a los datos que
hay en las tablas, por lo que si
actualizamos los datos de una vista, estamos actualizando realmente la tabla, y si actualizamos la tabla estos cambios
serán visibles desde la vista.
APRECIACIÓN DELL EQUIPO
Esto
siendo dicho, hay formas en las que no tiene sentido usar una vista (y damos
gracias a la vida por llegar a hacernos ver estos ejemplos desconcertantes).
Por ejemplo:
CREATE
VIEW view_books AS SELECT * FROM books;
Obviamente,
esto es completamente inutil y probablemente gastará la memoria de su servidor
SQL.
REFERENCIAS
keydata. (s.f.). keydata.com.
Obtenido de keydata.com: http://www.1keydata.com/es/sql/sql-create-view.php
patty.
(viernes de febrero de 2012). blogspot.pe. Obtenido de blogspot.pe:
http://patty-sqlserver2008.blogspot.pe/2012/02/7-vistas-procedimientos-y-trigger.html
tutorialesprogramacionya.
(s.f.). tutorialesprogramacionya.com. Obtenido de tutorialesprogramacionya.com:
http://www.tutorialesprogramacionya.com/sqlserverya/temarios/descripcion.php?cod=109&punto=&inicio=
Valenzuela,
L. (8 de abril de 2014). slideshare.net. Obtenido de slideshare.net:
http://es.slideshare.net/LilianaValenzuela1/vistas-en-bases-de-datos
wikipedia.
(4 de Noviembre de 2015). wikipedia.org. Obtenido de wikipedia.org:
https://es.wikipedia.org/wiki/Vista_(base_de_datos)
Ziscko.
( 6 de marzo de 2010). slideshare.net. Obtenido de slideshare.net:
http://es.slideshare.net/ZIscko/vistas-en-sql-y-my-sql
LINK DE NUESTRAS DIAPOSITIVAS:

No hay comentarios:
Publicar un comentario