Una vista es una representación lógica de una o más tablas. Una vista no contiene datos. Todos los datos son derivados de una o más tablas subyacentes.
Para qué sirve la vista:
- Para restringir el acceso a los datos
- Para simplificar las consultas complejas
- Para proporcionar independencia de datos
- Para presentar diferentes vistas de los mismos datos
Vistas Simples y Vistas Complejas
Existen dos clasificaciones para vistas: simples y complejas.
La diferencia básica radica en las operaciones DML (INSERT, UPDATE y DELETE).
Una vista simple:
- Deriva sus datos de sólo una tabla.
- No contiene funciones ni grupos de datos.
- Puede realizar operaciones DML a través de la vista.
Una vista compleja:
- Genera sus datos de muchas tablas.
- Contiene funciones o grupos de datos.
- No siempre permite operaciones DML a través de la vista.
Sintaxis:
CREATE [OR REPLACE] [FORCENOFORCE]
VIEW nombre_vista [(alias, [alias]…)]
AS sentencia_select
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY [CONSTRAINT constraint]];
Debe recordar que:
Una vez que la vista es creada, se pueden listar las columnas de la vista usando el comando DESCRIBE, como si fuera una tabla.
La información acerca de las vistas en la base de datos son almacenados en el diccionario de datos en la vista USER_VIEWS.
Ejemplo:
- Crear una vista que muestre el número, nombre, cargo, fecha de ingreso y salario de los empleados que tengan el cargo de analistas (ANALYST).
CREATE OR REPLACE VIEW v_analistas
AS
(SELECT empno, ename, job, hiredate, sal
FROM emp
WHERE job='ANALYST');
http://liang.armstrong.edu:5560/isqlplus
Veamos sus datos:
SELECT * FROM v_analistas;
Ejemplo:
- Cree una vista cuyas columnas sean numero de empleado, nombre y el campo calculado sal*12, para todos los empleados del departamento 20, utilizando alias de columnas en la subconsulta.
CREATE VIEW V_sal20
AS SELECT empno Codigo, ename Nombre,
sal*12 Sal_anual
FROM emp
WHERE deptno = 20;
Veamos su estructura:
DESCRIBE V_SAL20
Veamos sus datos:
SELECT * FROM v_sal20;
No hay comentarios:
Publicar un comentario