CODIGOHTML=<font color="00000" size="15">Una vista (view) es una consulta SELECT almacenada en base de datos con un cierto nombre.
Si tenemos la siguiente consulta:
SELECT C.D_CLIENTE, SUM( F.IMPORTE )
FROM FACTURA F, CLIENTE C
WHERE F.C_PAIS = C.C_PAIS AND
F.C_CLIENTE = C.C_CLIENTE
GROUP BY F.C_PAIS, F.C_CLIENTE, C.D_CLIENTE;
Si esta consulta se repite es necesaria muchas veces, entonces podemos guardar esta definicin en base de datos
con un nombre (crear una vista), y despus hacer la consulta sobre la vista.
CREATE VIEW TOTAL_FACTURA_CLIENTE AS
SELECT C.D_CLIENTE, SUM( F.IMPORTE )
FROM FACTURA F, CLIENTE C
WHERE F.C_PAIS = C.C_PAIS AND
F.C_CLIENTE = C.C_CLIENTE
GROUP BY F.C_PAIS, F.C_CLIENTE, C.D_CLIENTE;
Y despus hacer la consulta sobre la vista:
SELECT *
FROM TOTAL_FACTURA_CLIENTE;
La sintaxis de creacin de vista es:
CREATE {OR REPLACE} {FORCE} VIEW nombre_vista AS
Subconsulta;
La clusula OR REPLACE permite sobrescribir una definicin existente con otra nueva definicin.
La clusula FORCE permite crear una vista aunque las tablas de la subconsulta no existan.
Ejemplos:
CREATE OR REPLACE FORCE VIEW VISTA_INCORRECTA AS
SELECT * FROM FACTURA_ADICIONAL;
CREATE OR REPLACE VIEW FACTURA_CLIENTE_A111 AS
SELECT * FROM FACTURA
WHERE C_PAIS = 1 AND C_CLIENTE = A111;</font>