Vistas en postgresql



Documentos relacionados
Consultas con combinaciones

SQL (Structured Query Language)

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

MANUAL BÁSICO DEL LENGUAJE SQL

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Base de datos relacional

CAPÍTULO 3 Servidor de Modelo de Usuario

CONSULTAS BASICAS EN SQL SERVER

A.1. Definiciones de datos en SQL

LAS SUBCONSULTAS SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Aplicaciones de las vistas Concepto de vista Vistas en SQL Vistas en SQL.

Base de datos Lenguaje SQL

Bases de datos relacionales y el modelo entidad-relación

6 - Recuperar algunos registros (where)

1. DML. Las subconsultas

Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.

T12 Vistas y tablas temporales

8 SQL SERVER 2008 RA-MA

ÍNDICE PRIMERA PARTE... 17

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

Sub consultas avanzadas

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

MANUALITO MS-SQL SERVER

Tema 4. Manipulación de datos con SQL

CREACION DE USUARIOS EN MY SQL

ADMINISTRACIÓN DE BASE DE DATOS

4- Uso de sentencias para el envió y extracción de datos

Universidad Nacional de Costa Rica Administración de Bases de Datos

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

Bases de Datos 2. Teórico

El lenguaje SQL es un lenguaje estándar para el acceso y

Guía práctica de SQL

Sistema para Gestión Hotelera Visión

Trabajos de Ampliación. Bases de datos NoSQL.

BASE DE DATOS RELACIONALES

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL)

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos

Bases de Datos 2. Teórico

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

6- Combinación de tablas

Microsoft SQL Server 2005

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

sql*plus es un programa de linea de comandos de oracle que puede ejecutar comandos sql y pl/sql de forma interactiva o mediante un script.

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO

Bases de datos: Sistemas de bases de datos:

Modelos y Bases de Datos

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

2071 Querying Microsoft SQL Server 2000 with Transact- SQL

Entrarás a formar parte de nuestra bolsa de empleo a la que acuden las empresas en busca de nuestros alumnos.

CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS

Soporte y mantenimiento. Generalidades

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:

PHP Perfect SQL v1.0 (SQL perfectas en PHP)

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

Base de Datos Oracle 10g: Introducción a SQL Código: D Duración: 5 días (40 horas)

DEPARTAMENTO: Computación y diseño NOMBRE DEL CURSO: Base de datos I CLAVE: ACADEMIA A LA QUE PERTENECE: Base de datos I

SQL (Structured Query Language)- DML

select nombre from profesores where categoria='aso6';

5- Uso de sentencias avanzadas

Patrones para persistencia (I) Ingeniería del Software II

Soporte y mantenimiento. Generalidades

REGISTRO DE EMPRESAS Y PERSONAS BASE DE INFORMACIÓN DE CLIENTES & CONTACTOS

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM

Capítulo 12: Indexación y asociación

Base de datos Procedimientos Almacenados y Funciones

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

BASES DE DATOS EL MODELO RELACIONAL: LAS TABLAS

Tutorial de MS Access Un sistema de Bases de Datos Relacional. Profesores: Hugo Mora, Ignacio Casas

Sistema de Gestión Integral STI NETWORK

UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS

Microsoft Access 2007 (Completo)

Base de datos I Facultad de Ingeniería. Escuela de computación.

SISTEMA DE VENTAS EN LINEA VISIÓN. Versión 1.0

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

Manual para la utilización de PrestaShop

Tablas y Campos Nuevos

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional

Bases de datos en Excel

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

1.264 Tema 7. Introducción a SQL

Manual de Usuario del Sistema de control de Turnos

CONSULTAS MULTITABLAS SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas.

Son objetos cuya función es el tratamiento de varios registros exclusivamente durante la ejecución de un programa.

MANUAL DE USUARIO SISTEMA DE ALMACEN DIF SONORA

Bases de datos y tablas

Programación SQL. Lucio Salgado Diciembre 2008

FORMACIÓN E-LEARNING. Curso de Lenguaje SQL para Oracle

PROGRAMA FORMATIVO MICROSOFT ACCESS 2007 (COMPLETO)

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

1

OPTIMIZACIÓN DE CONSULTAS EN SQL. Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas

Qué es una base de datos?

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

Transcripción:

Vistas en postgresql Conceptos y definición de Vista Los usuarios que acceden a una base de datos relacional, lo hacen típicamente a través de vistas, de modo que diferentes usuarios tienen diferentes vistas. Una vista, en sí, es una tabla virtual derivada, con nombre. El término virtual significa que la tabla no existe como tal, pero para el usuario si parece existir. Por el contrario una tabla es real, en el sentido que existe y está almacenada en algún dispositivo físico de almacenamiento. Las vistas no se sustentan en datos almacenados físicamente, solo se almacena su definición en el catálogo de sistema, y esta construida en base a otras tablas. Las vistas tienen la misma estructura que una tabla : filas y columnas. los datos se recuperan mediante una consulta SELECT y se presentarán igual que los de una tabla. Definición de Vista en SQL Como dijimos anteriormente, una vista es una relación virtual cuya extensión se deriva de las relaciones básicas de la base de datos, es decir, por medio de sentencias SELECT. La sintaxis de definición de una vista en SQL es: CREATE [OR REPLACE] VIEW nombre_de_vista AS sentencia_select Ejemplo sencillo : CREATE VIEW cliente_apellido AS SELECT * FROM clientes WHERE ap_paterno LIKE A% En este ejemplo se crea una vista con el nombre cliente_apellido que consulta por todos los clientes cuyo apellido paterno comienza con la letra A. Unidad V Vistas Pág. 1 de 5 Lic. Isaac Barragán Jiménez Rev. Ago- 2010

Ventajas y Desventajas de las Vistas Ventajas SEGURIDAD: Las vistas pueden proporcionar un nivel adicional de seguridad. Por ejemplo, en la tabla de empleados, cada responsable de departamento sólo tendrá acceso a la información de sus empleados. SIMPLICIDAD: Las vistas permiten ocultar la complejidad de los datos. Una base de datos se compone de muchas tablas. La información de dos o más tablas puede recuperarse utilizando una combinación de dos o más tablas (relacional), y estas combinaciones pueden llegar a ser muy confusas. Creando una vista como resultado de la combinación se puede ocultar la complejidad al usuario. ORGANIZACION: Las vistas ayudan a mantener unos nombres razonables en la base de datos para acceder a consultas complejas. EXACTITUD EN LOS DATOS SOLICITADOS: Permiten acceder a un subconjunto de datos específicos, omitiendo datos e información innecesaria e irrelevante para el usuario. AMPLIA PERSPECTIVAS DE LA BASE DE DATOS: Proporciona diversos modelos de información basados en los mismos datos, enfocándolos hacia distintos usuarios con necesidades especificas. El mostrar la información desde distintos ángulos nos ayuda a crear ambientes de trabajo y operación acordes a los objetivos de la empresa. Debe evaluarse el perfil y requerimientos de información de los usuarios destino de la vista. TRANSPARENCIA EN LAS MODIFICACIONES: El usuario final no se verá afectado por el diseño o alteraciones que se realicen en el esquema conceptual de la base de datos. Si el sistema requiere una modificación en su funcionamiento interno, podrán afectarse diversas estructuras que proveen el desempeño de este; se pretende que los usuarios finales no adviertan tales alteraciones. Desventajas NO SON ACTUALIZABLES : Las vistas en Postgre no son actualizables, es decir, si bien es cierto, son tratadas como tablas, no es posible hacer INSERT, DELETE ni UPDATE sobre las vistas, esta desventaja es una característica particular en Postgre dado que esta cualidad si esta disponible en otros motores de bases de datos como ORACLE, Informix y SQL Server, sin embargo cabe notar que Postgre cubre esta falencia en las vistas con la creación de reglas (CREATE RULE) que permite llenar el vacío dejado por la vista. Unidad V Vistas Pág. 2 de 5 Lic. Isaac Barragán Jiménez Rev. Ago- 2010

Definición de Vista SQL Como se explico anteriormente, la sintaxis de definición de una vista en SQL en Postgresql es básicamente la siguiente : CREATE [OR REPLACE] VIEW <nombre_de_vista> AS < SELECT campos1 [, campo2,..., campon ] FROM tabla1 [, tabla2,..., tablan ] [ WHERE condiciones_de_consulta ] [ ORDER BY lista_de_campos ] [ GROUP BY lista_de_campos ] > Como podemos apreciar, existe una similitud muy grande entre una consulta SELECT y la creación de una vista propiamente tal, de hecho, una vista es una definición almacenada de una consulta SELECT SQL, también notemos que esta es una definición básica de vista pues las cláusulas de la sentencia de consulta SELECT son muy amplias y pueden también aplicarse a la vista. Llamadas a Vistas Como las Vistas tienen la misma estructura que una tabla, es decir, poseen filas y columnas, los datos se recuperan mediante una consulta SELECT y se presentarán igual que los de una tabla a recuperar, por lo tanto las llamadas a las Vistas pueden ser con las siguientes Sintaxis: Llamada sencilla: SELECT * FROM nombre_de_la_vista; Llamada condicionada: SELECT * FROM nombre_de_la_vista WHERE condición(es); Llamada definida: SELECT * FROM nombre_de_la_tabla WHERE condición(es) LIKE % ORDER BY columna; Llamada mostrando solo unas columnas: SELECT columna1,columna2, FROM nombre_de_la_tabla WHERE condición(es); Unidad V Vistas Pág. 3 de 5 Lic. Isaac Barragán Jiménez Rev. Ago- 2010

Eliminar Vistas Si en algún caso se necesita modificar una Vista, debe eliminarla primero y luego volverla a crear, no se pueden modificar datos directamente en la Vista, la sintaxis para eliminar es la siguiente: DROP VIEW nombre_de_la_vista; Ejemplos de Vistas SQL modelo. Para poder mostrar las cualidades y características de las vistas, utilizaremos el siguiente Unidad V Vistas Pág. 4 de 5 Lic. Isaac Barragán Jiménez Rev. Ago- 2010

Ejemplo Crear una vista con el nombre artiven que considere el nombre de artículos, su precio, la fecha de venta de dichos artículos y el tipo de la venta. CREATE VIEW artiven AS SELECT artículos.nomart, artículos.preart, ventas.fecven, ventas.tipven FROM artículos,ventas WHERE artículos.idart = ventas.idart; Solucionar el mismo ejemplo utilizando la cláusula JOIN en lugar de la cláusula WHERE y los artículos ordenados por nombre. Ejercicio 1 Crear una vista con el nombre del cliente, los nombres de los artículos que compro, la fecha en que los compro y el tipo de venta, para clientes de sexo masculino (usando la cláusula WHERE y la cláusula JOIN). Ejercicio 2 Crear una vista con el nombre de empleado, los nombres de los artículos que vendió, la fecha en que se vendieron y el número de artículos vendidos, ordenados por nombre de empleado (usando la cláusula WHERE y la cláusula JOIN). Ejercicio 3 Crear una vista con el nombre del cliente y el nombre del empleado que lo atendió, en ventas de Contado (usando la cláusula WHERE y la cláusula JOIN). Unidad V Vistas Pág. 5 de 5 Lic. Isaac Barragán Jiménez Rev. Ago- 2010