Cómo crear, actualizar y eliminar vistas en PostrgeSQL

Definir una vista en PostgreSQL, y otros sistemas de administración de bases de datos SQL, es bastante simple: una vista es una tabla virtual que no forma parte de un esquema físico. Se calcula o se compara dinámicamente con datos en tablas ordinarias (también conocidas como tablas base). En este artículo, le mostraremos cómo crear vistas de PostgreSQL y administrarlas fácilmente.

Las vistas pueden ser necesarias en varios casos:

  • Por lo general, puede usar vistas para estructurar cualquier dato requerido de una manera conveniente e intuitiva.
  • Si está tratando con información confidencial, puede crear una vista con permisos separados para restringir el acceso de los usuarios a ciertas columnas y filas de una tabla (o varias tablas).
  • La visualización puede ser útil para operaciones repetitivas con una consulta compleja. Puede usar esta consulta solo una vez para crear una vista especial. Más tarde, si lo necesita, puede consultar esta vista usando una declaración SELECT simple.
  • Las vistas también se pueden aplicar para agregar y resumir datos de varias tablas, lo que es útil para generar informes.

TABLA DE CONTENIDO
1. Cómo usar la instrucción CREATE VIEW en PostgreSQL
2. Cómo crear una vista temporal
3. Cómo crear un look materializado
4. Cree una vista a partir de varias tablas de PostgreSQL
5. Cómo actualizar las vistas de PostgreSQL usando CREAR O REEMPLAZAR
6. Use el comando ALTER VIEW para cambiar las propiedades auxiliares
7. Cómo eliminar la vista de PostgreSQL
8. Cómo administrar vistas usando dbForge Studio para PostgreSQL
9. Conclusión

Índice

    Cómo usar la instrucción CREATE VIEW en PostgreSQL

    Comencemos por crear una vista de PostgreSQL. Para ello utilizamos el operador CREATE VIEW. Su sintaxis básica es simple y se ve así:

    CREATE VIEW view_name AS
    SELECT column1, column2.....
    FROM table_name
    WHERE [condition];

    Aquí especifica el nombre de su punto de vista después del punto CREAR VISTA e ingresa la consulta después de la palabra clave AS. Esta es la consulta definitoria de su tipo, y puede ser de cualquier complejidad.

    Tenga en cuenta que puede agregar IF NOT EXISTS a su declaración si no está seguro de si hay una presentación con este título:

    CREATE VIEW IF NOT EXISTS view_name AS
    SELECT column1, column2.....
    FROM table_name
    WHERE [condition];

    Luego puede consultar fácilmente su vista recién creada de la siguiente manera:

    SELECT * FROM view_name;

    Cómo crear una vista temporal

    Puede agregar una palabra clave TEMP o TEMPORARY adicional para crear una vista temporal. Así es como se ve la sintaxis:

    CREATE [TEMP | TEMPORARY] VIEW view_name AS
    SELECT column1, column2.....
    FROM table_name
    WHERE [condition];

    La vista temporal se eliminará automáticamente al final de la sesión.

    Cómo crear un look materializado

    Aunque las representaciones materializadas representan un tipo de objeto de base de datos completamente diferente, no podemos dejarlas sin mencionar. Sí, están determinados por la consulta, al igual que las vistas reales. Sin embargo, a diferencia de ellas, las vistas materializadas se almacenan en el disco y sus consultas definitorias no se cumplen cada vez que accede a ellas. Para actualizar los datos contenidos en una vista materializada, debe actualizarla con una consulta especial.

    Veamos cómo se hace. Primero, revisemos la sintaxis básica que crea el aspecto materializado:

    CREATE MATERIALIZED VIEW view_name AS
    SELECT column1, column2.....
    FROM table_name
    WHERE [condition];
    WITH [NO] DATA;

    Como puede ver, la diferencia está en la primera y la última oración, y la última puede necesitar alguna explicación. Entonces, si desea cargar inmediatamente los datos en una nueva forma materializada, use la opción DATOS. De lo contrario, ingrese SIN DATOS en su consulta, y su vista será ilegible hasta que cargue datos en ella.

    Para cargar o actualizar datos materializados, utilice la siguiente consulta:

    REFRESH MATERIALIZED VIEW [CONCURRENTLY] view_name;

    ¡Eso es! Sin embargo, tenga en cuenta que cada vez que actualiza una vista materializada, PostgreSQL bloquea la tabla involucrada, por lo que no puede realizar otras consultas hasta que se complete la actualización. Tenga esto en cuenta si su programa no tiene que estar inactivo. Para evitar esto, utilice la palabra clave CONCURRENTLY.

    Crear una vista a partir de varias tablas de PostgreSQL

    Puede crear una vista a partir de varias tablas base en PostgreSQL incluyéndolas en la instrucción SELECT:

    CREATE [TEMP | TEMPORARY] VIEW view_name AS
    SELECT column1, column2.....
    FROM table_name1, table_name2.....
    WHERE [condition];

    Cómo actualizar las vistas de PostgreSQL usando CREAR O REEMPLAZAR

    Si necesita actualizar la consulta de definición para una vista existente, puede usar la instrucción CREAR O REEMPLAZAR:

    CREATE OR REPLACE view_name AS
    SELECT column1, column2.....
    FROM table_name
    WHERE [condition];

    De todos modos: ingrese el nombre de la vista existente e ingrese la consulta actualizada después de la palabra clave AS.

    También puede consultar nuestra guía sobre la creación de tablas en PostgreSQL mediante CREAR O REEMPLAZAR.

    Use el comando ALTER VIEW para cambiar las propiedades auxiliares

    ALTER VIEW le permite cambiar las propiedades auxiliares de una vista (en lugar de cambiar la consulta de definición de su vista con CREAR O REEMPLAZAR). Por ejemplo, puede cambiar el nombre de su vista con la siguiente sintaxis:

    ALTER VIEW view_name RENAME TO new_view_name;

    Cómo eliminar la vista de PostgreSQL

    Puede eliminar la vista mediante la instrucción DROP VIEW. La sintaxis básica es la siguiente:

    DROP VIEW [IF EXISTS] view_name;

    Aquí solo necesita especificar la vista que desea eliminar. SI EXISTE el habla es opcional; si lo omite e intenta eliminar la vista inexistente, obtendrá un error.

    Cómo administrar vistas usando dbForge Studio para PostgreSQL

    Todas estas operaciones se pueden realizar convenientemente en dbForge Studio para PostgreSQL, un IDE que cubre la mayoría de las tareas diarias relacionadas con el desarrollo, la gestión y la administración de PostgreSQL. Sus características adicionales incluyen edición de datos, importación, exportación e informes.

    Creación de vistas de PostgreSQL

    Crear una vista de PostgreSQL es cuestión de unos momentos. Haga clic en la barra de herramientas SQL nuevo e ingrese la consulta CREATE VIEW requerida en la ventana SQL.

    Después de eso, simplemente haga clic Correr, y se creará su vista.

    Por cierto, puede consultar nuestro blog para obtener más información sobre cómo crear una nueva base de datos PostgreSQL utilizando dbForge Studio.

    Cambiar las vistas de PostgreSQL

    Del mismo modo, puede cambiar la vista de PostgreSQL. El flujo es el mismo: haga clic SQL nuevo, ingrese la consulta requerida CREAR O REEMPLAZAR VISTA o ALTERAR VISTA y presione Correr.

    Eliminar vistas de PostgreSQL

    Finalmente, eliminar una vista es igual de rápido con la consulta DROP VIEW:

    Conclusión

    La fácil manipulación de las vistas es solo una pequeña parte de lo que puede ofrecer dbForge Studio para PostgreSQL. Si desea ver todas sus funciones en acción, no dude en descargar una versión de prueba gratuita de 30 días.

    Artículos de interés

    Subir