PostgreSQL – Declaración DROP VIEWS

Una vista puede verse como una tabla virtual que puede contener todas las filas de una tabla o filas seleccionadas de una o más tablas. Estos nos permiten ver datos limitados solo en lugar de información completa almacenada en una tabla. Se puede crear una vista a partir de una o varias tablas base ( la tabla a partir de la cual se crea la vista ). Podemos realizar varias operaciones en las vistas, como crear, actualizar y eliminar vistas. Aquí, nos centraremos principalmente en descartar o eliminar vistas. Tratemos de entenderlo con la ayuda de un ejemplo como se muestra a continuación: 

Para comprender la declaración DROP VIEW , tomaremos una tabla de muestra llamada «Estudiantes» como se muestra aquí:

Mesa de estudiantes

Declaración DROP VIEW:

Como sugiere el nombre, la instrucción DROP VIEW elimina una vista de la base de datos. La sintaxis básica de DROP VIEW es la siguiente:

Syntax:
DROP VIEW [IF EXISTS] view_name
[CASCADE | RESTRICT]

Ahora comprendamos el significado de las palabras clave utilizadas en la sintaxis anterior una por una:

  1. Las palabras clave DROP VIEW se utilizan para especificar el nombre de la vista que debe descartarse.
  2. Como sugiere el nombre, IF EXISTS garantiza que se elimine una gota solo si existe. Si intentamos descartar una vista que no existe, se usará un error.
  3. view_name es simplemente el nombre de la vista que se va a descartar.
  4. RESTRICT no permite eliminar la vista si otros objetos dependen de ella. Es la opción por defecto.
  5. CASCADE elimina automáticamente los objetos que dependen de la vista y todos los objetos que dependen de esos objetos.

Nota : También es posible eliminar múltiples vistas usando la declaración única DROP VIEW usando la siguiente sintaxis:

DROP VIEW [IF EXISTS] view_name1, view_name2, ...;

Ahora, para comprender la declaración DROP VIEW, primero debemos crear una vista que podamos descartar/eliminar más tarde. A continuación se muestra la declaración que crea una vista denominada «StudentsView» basada en la información almacenada en la tabla «Students».

CREATE OR REPLACE VIEW StudentsView
AS 
SELECT 
   admit_id,
   stu_name,
   branch 
FROM
Students
WHERE branch ='Science';

Salida :  

EstudiantesVer

Así que hemos creado con éxito una vista que contiene tres columnas ( admit_id , stu_name , branch ) de la tabla original. Vamos a crear una vista más llamada » mivista » que se basa en StudentsView usando la siguiente declaración:

CREATE OR REPLACE VIEW myview 
AS 
SELECT 
   admit_id,
   stu_name 
FROM 
StudentsView 
WHERE stu_name ='Sakshi';

Salida

mi vista

Dado que esta vista se ha creado a partir de la primera vista denominada «StudentsView», por lo tanto, otros objetos dependen de «StudentsView». Ahora intentemos eliminar la vista «StudentsView» usando la declaración DROP VIEW como se muestra aquí:

DROP VIEW StudentsView;

Output:

ERROR:  cannot drop view studentsview because other objects depend on it
DETAIL:  view myview depends on view studentsview
HINT:  Use DROP ... CASCADE to drop the dependent objects too.

Dado que RESTRICT era la opción predeterminada, no permitirá que se elimine la vista si otros objetos dependen de ella y, por lo tanto, se ha generado un error aquí. Sin embargo, si intentamos eliminar myview , simplemente puede descartarse.

DROP VIEW myview;

Output:
DROP VIEW
Query returned successfully in 73 msec.

Así es como podemos crear y soltar vistas en PostgreSQL. Para comprobar si la vista se ha eliminado con éxito o no, simplemente ejecute SELECT * FROM view_name si aún existe o se ha eliminado. En este caso, si ejecutamos la siguiente consulta:

SELECT * from myview

luego se generará un error que muestra que myview no existe porque ya hemos eliminado » myview «.

Publicación traducida automáticamente

Artículo escrito por tanyagarg3434 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *