Introducción a las vistas de Oracle

Las Vistas de Oracle son tablas virtuales que no existen físicamente. Las vistas se crean en la tabla o tablas existentes. Estos se almacenan en el diccionario de datos de Oracle y no almacenan ningún dato. Las vistas son subhileras o subcolumnas de la tabla o tablas. En realidad, las vistas se crean en las consultas de uso frecuente o consultas complejas o consultas de unión, etc., de modo que cada vez no se deben obtener los datos de la tabla o tablas directamente, los datos resultantes se pueden obtener de la vista. Las vistas se pueden ejecutar cuando se llaman.

Las vistas se crean mediante una consulta que une una o más tablas.

CREAR VISTA en Oracle

Veamos cómo crear View en Oracle con la ayuda de algunos ejemplos mencionados a continuación:

La sintaxis para crear la vista:

CREATE VIEW view name AS
SELECT column (, column ) FROM table
WHERE condition;

Ver nombre: especifica el nombre de Oracle VIEW que el usuario desea crear.

Una representación visual de una vista de oráculo se representa en el diagrama a continuación, ya que en el diagrama a continuación el área sombreada en rojo vuelve como resultado de la consulta de selección de Oracle y que se almacena como una vista:

Figura: Vista de Oracle

Ejemplos de consultas

Tomemos un ejemplo para crear una vista. Aquí hay un ejemplo, estamos creando una vista simple en una sola tabla.

Tabla de proveedores

Ejemplo de consulta de creación de vistas de oráculo

CREATE VIEW empview AS
SELECT *
FROM employees;
WHERE employees.manager_id = 100;

Salida:

Vista creada.0.21 segundos

Este ejemplo de Oracle INNER JOIN anterior devolverá todas las filas de la tabla de empleados y la tabla de departamentos donde coinciden el valor _id del empleado en la tabla de empleados y en la tabla de departamentos.

Comprendamos la vista del oráculo en detalle con la ayuda de algunos de los ejemplos de consulta:

Consideramos aquí el esquema hr que es el esquema de muestra de la base de datos Oracle. El esquema hr contiene PAÍSES, EMPLEADOS, DEPARTAMENTOS, JOB_HISTORY, JOBS, LOCATIONS, REGIONS, en los que estamos interesados ​​o requerimos tablas de EMPLEADOS, DEPARTAMENTOS y LOCATIONS.

La descripción de estas tablas son:

Mesa EMPLEADOS

Tabla DEPARTAMENTOS

Ejemplo 1

Crear una vista en columnas seleccionadas

Aquí creamos una vista denominada vista de empleado basada en la tabla del empleado. La vista del empleado que tiene la identificación del empleado, el nombre completo del empleado, que es la concatenación de nombre y apellido y número de teléfono del empleado

Código:

CREATE VIEW employee view AS
SELECT
employee_id,
first_name || ' ' || last_name full name,
phone_number
FROM
employees;

Salida:

Ahora podemos verificar el Oracle VIEW recién creado usando esta consulta:

Select * from employee view;

Salida:

Ejemplo # 2

Crear vista de oráculo con alias de columnas

Código:

CREATE VIEW employee view AS
SELECT employee_id, first_name || ' ' || last_name "full name", FLOOR( months_between ( CURRENT_DATE, hire_date )/ 12 ) as years
FROM employees;

Salida:

Select * from employee view;

Salida:

Ejemplo # 3

Crear vista de oráculo con alias de columnas

código:

CREATE VIEW employee view (employee_id, full name, years) AS
SELECT
employee_id, first_name || ' ' || last_name,
FLOOR( months_between ( CURRENT_DATE, hire_date )/ 12 )
FROM
employees;

Salida:

Select * from employee view;

Salida:

Ejemplo # 4

Vista de acceso con cláusula where

Código:

SELECT *
FROM employee view
WHERE years > 10;
ORDER BY full name;

Salida:

Ejemplo # 5

Vista de acceso con una orden por cláusula

Código:

SELECT full name
FROM employee view
WHERE years > 10
ORDER BY full name;

Salida:

Ejemplo # 6

Actualizar y hacer la vista de solo lectura

Código:

CREATE OR REPLACE VIEW employee view (employee_id, full name, years) AS
SELECT
employee_id, first_name || ' ' || last_name,
FLOOR ( months_between ( CURRENT_DATE, hire_date ) / 12 )
FROM employees WITH reading ONLY;

Salida:

Ejemplo # 7

Crear vista de oráculo con varias tablas

Código:

CREATE OR REPLACE VIEW dept_manger AS
SELECT
employee_id, first_name || ' ' || last_name as name, department_name
FROM EMPLOYEES
INNER JOIN DEPARTMENTS
on EMPLOYEES. EMPLOYEE_ID = DEPARTMENTS. MANAGER_ID;,

Salida:

Ejemplo # 8

Eliminar la vista utilizando la instrucción Drop

Código:

Drop view employee view;

Salida:

Ventajas y desventajas de las vistas en un oráculo

Las ventajas y desventajas se dan a continuación:

Ventajas de las vistas en un oráculo

A continuación se presentan las ventajas:

  • La vista se puede crear en los datos seleccionados o en la columna de la tabla, lo que restringe la vista de una tabla y puede ocultar algunos de los datos o la columna en las tablas.
  • La vista crea para ver los datos sin almacenar los datos en la tabla.
  • Ver cabina se crea para unir dos o más datos de tablas y almacenarlos como una tabla u objeto.
  • Se crea una cabina de vista para lograr seguridad.
  • La vista ofrece un buen rendimiento para ejecutar consultas complejas o unir consultas.

Desventajas de las vistas en un oráculo

A continuación se presentan las desventajas:

  • Las operaciones DML no pueden realizarse a la vista.
  • La vista se vuelve inactiva si se deja caer la tabla en la que se creó.
  • La vista ocupa un espacio de memoria ya que es un objeto.

Conclusión

Las vistas son tablas virtuales que no existen físicamente. Las vistas se crean en la tabla o tablas existentes. Las vistas se crean en las consultas de uso frecuente o consultas complejas o consultas de unión. La vista ofrece un buen rendimiento para ejecutar consultas complejas o unir consultas. Las operaciones DML no pueden realizarse a la vista. Se crea una cabina de vista para lograr seguridad. La vista se vuelve inactiva si se deja caer la tabla en la que se creó.

Artículos recomendados

Esta es una guía de Oracle Views. Aquí discutimos los parámetros de las vistas, ventajas y desventajas de Oracle junto con los ejemplos de consultas. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Se une a Oracle
  2. Oracle Data Warehousing
  3. Consultas de Oracle
  4. ¿Qué es la base de datos Oracle?