Introducción a las vistas SQL

Para consultas SQL complejas, las vistas se crean utilizando una o más tablas. Además, la vista se utiliza para proporcionar la encapsulación de la tabla / tablas por motivos de seguridad. Una vista se considera una tabla virtual con filas y columnas como una tabla de base de datos normal.

Sintaxis para Crear Vista

Se puede crear una vista usando la instrucción CREATE VIEW de la siguiente manera:

CREATE VIEW VIEW_NAME AS
SELECT column1, column2, column3…….
FROM table_name WHERE (condition);

Crear una vista en SQL con ejemplos:

Consideremos la siguiente tabla EMPLEADO:

Podemos crear una vista desde la tabla anterior como se muestra a continuación.

CREATE VIEW EMLOYEE_VW AS
SELECT NAME, AGE, SALARY
FROM EMPLOYEE;

En la vista anterior EMPLOYEE_VW, se crearán las siguientes columnas.

SELECT * FROM EMPLOYEE_VW;

Podemos crear vistas desde más de una tabla.

Consideremos otra tabla DEPARTAMENTO como a continuación.

Podemos crear una vista de las tablas de EMPLEADO y DEPARTAMENTO anteriores, como se muestra a continuación:

CREATE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

La vista DEPT_VIEW tendrá el siguiente resultado.

SELECT * FROM DEPT_VIEW;

Vista diferente Operaciones en Vistas SQL

A continuación se muestran varias operaciones de vista en SQL:

Actualizar en vista

Aunque se puede actualizar una vista, debemos mantener algunas condiciones en el aviso. Por ejemplo, al actualizar una vista, la instrucción select no debe contener una palabra clave DISTINCT, establecer funciones, ordenar por cláusula, Agrupar por o tener, subconsultas, etc. Además, la cláusula FROM no debe contener varias tablas. Además de lo anterior, la vista no debe tener valores NULL si es necesario actualizarla. Entonces, cuando deseamos actualizar la vista EMPLOYEE_VW manteniendo los puntos anteriores enfocados, la tabla EMPLOYEE se actualizará.

La sentencia CREATE O REPLACE VIEW se usa para agregar o eliminar campos de una vista.

SINTAXIS para la actualización

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2….
FROM table_name
WHERE (condition);

Actualicemos la vista DEPT_VIEW como se muestra a continuación para agregar la columna de ubicación.

CREATE OR REPLACE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME, DEPARTMENT.LOCATION
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

SELECT * FROM EMPLOYEE;

De la consulta anterior, obtendremos el siguiente resultado.

INSERTANDO EN VISTA

Sintaxis para insertar en una vista

INSERT INTO view_name(column1, column 2, column3, ….) VALUES(value1, value2, value3, …);

Se puede insertar una fila para ver EMPLOYEE_VW mediante el uso de insertar en una declaración de la siguiente manera:

INSERT INTO EMPLOYEE_VW (NAME, AGE, SALARY) VALUES('RAM', '24', '27000.00');

Después de la inserción, podemos ver el resultado mediante la consulta de selección a continuación.

SELECT * FROM EMPLOYEE_VW;

BORRANDO DESDE UNA VISTA

Al eliminar una fila de una vista, se elimina la fila de la tabla en la que se creó la vista.

La sintaxis para eliminar de una vista

DELETE FROM view_name WHERE (condition);

Podemos eliminar la fila de la vista de la siguiente manera:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

Después de la eliminación, el resultado se puede mostrar en la consulta a continuación.

SELECT * FROM EMPLOYEE_VW;

BAJANDO UNA VISTA

Las vistas se pueden eliminar mediante la sintaxis siguiente:

DROP VIEW view_name;

Si queremos eliminar la vista EMPLOYEE_VW, se puede eliminar de la siguiente manera:

DROP VIEW EMPLOYEE_VW;

Ventajas y desventajas de las vistas SQL

A continuación se presentan algunos pros y contras de las vistas SQL de la siguiente manera:

Ventajas

A continuación se presentan las ventajas de usar vistas en SQL:

  • Si necesitamos mantener información confidencial al proporcionar acceso limitado a los usuarios, las vistas se utilizan para ese propósito. Las vistas se utilizan para mostrar solo los datos requeridos a los usuarios manteniendo seguros los datos confidenciales.
  • Como una vista de base de datos está asociada con muchas tablas sobre las que se crea la vista, simplifica la complejidad de la consulta.
  • La vista se utiliza para ocultar a los usuarios finales la complejidad de las tablas subyacentes utilizadas en una base de datos.
  • Las vistas son útiles en caso de rediseñar la base de datos para no afectar a ninguna otra aplicación que use la misma base de datos.
  • Los datos de las columnas calculadas se pueden calcular muy fácilmente cuando consultamos los datos desde la vista, ya que las vistas permiten columnas calculadas.

Desventajas

A pesar de las muchas ventajas que ofrecen las vistas, todavía tiene algunas desventajas que se indican a continuación:

  • Una de las principales desventajas de usar la vista entra en escena cuando cambiamos las estructuras de la tabla con frecuencia sobre las cuales se crea la vista. Entonces, cuando se cambian las estructuras de la tabla, también se debe cambiar la vista.
  • Además, el uso de la vista ralentiza el rendimiento de las consultas.

Conclusión

Las vistas son ampliamente utilizadas por sus muchas ventajas. Añaden una capa de seguridad adicional a la base de datos que es muy esencial para cualquier sistema de gestión de bases de datos relacionales. Las vistas son flexibles en caso de exposición de los datos a los usuarios finales al mostrar solo los datos necesarios, por ejemplo, usando vistas de solo lectura para limitar los privilegios a los usuarios. Pero también las vistas pueden ser desventajosas si las estructuras de tabla subyacentes cambian con mucha frecuencia, lo que aumenta la complejidad de cambiar las vistas de acuerdo con las estructuras de la tabla. Entonces, con muchas ventajas en la imagen, las vistas son un poco menos recomendadas cuando el rendimiento de la consulta de datos es vital para el negocio. Depende de nosotros elegir el uso de la vista en nuestra base de datos mediante la validación de los requisitos comerciales correctamente para obtener más ventajas de las vistas para aumentar el rendimiento del sistema.

Artículos recomendados

Esta ha sido una guía para las vistas SQL. Aquí hemos discutido la creación de una vista en SQL y la sintaxis para crear una vista junto con las ventajas y desventajas de las vistas en SQL. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Preguntas de la entrevista de Oracle PL / SQL
  2. ¿Qué es el esquema MySQL?
  3. ¿Qué es la inyección SQL?
  4. ¿Qué es el T-SQL?
  5. Aprenda la declaración INSERT en Oracle
  6. Diferentes opciones de vista en MySQL