BASES DE DATO TO I VISTAS curso 2008

Documentos relacionados
Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

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

Bases de Datos SQL - Ejemplos

SQL (Structured Query Language)- DML

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

Unidad. Lenguaje SQL. (Structured Query Language)

Grupo Kybele, Pág. 1

Bases de Datos: Structured Query Language (SQL)

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

Temario. Índices simples Árboles B Hashing

Consultas con combinaciones

A.1. Definiciones de datos en SQL

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

2.5.- El lenguaje estándar SQL

ÍNDICE. Introducción... Capítulo 1. Novedades de Access

Bases de Datos 2. Teórico

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

Creación de Vistas. Copyright Oracle Corporation, All rights reserved.

SERVICIO NACIONAL DE APRENDIZAJE SENA

Vistas en postgresql

Restricciones de Integridad

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

Lenguaje para descripción de datos

ÍNDICE PRIMERA PARTE... 17

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

8 SQL SERVER 2008 RA-MA

SQL. Orígenes y Evolución

SQL (DML) Carlos A. Olarte Gestión y Modelación de SQL Datos (DML)

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

SQL Los fundamentos del lenguaje

Tema 33. El lenguaje SQL

T12 Vistas y tablas temporales

Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012

SQL (Structured Query Language)

BASES DE DATOS SQL MÁS S DE SQL (DML) OPERADOR UNION (L30) <SELECT1> UNION <SELECT2> UNION <SELECTN> Copyright 2006, 2007 Instituto Gala

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

SQLModificaciones a la BD

ACERCA DE LOS AUTO RES... III AGRADECIMIENTOS... xi INTRODUCCION... Xl

Base de Datos SQL Server

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

Tema 4. SQL. Juan Ignacio Rodríguez de León

GESTORES GESTORES DE BASES DE DATOS

3. El catálogo 26. Laboratorio de Bases de Datos

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

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales

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

Tema 4. Manipulación de datos con SQL

MANUAL BÁSICO DEL LENGUAJE SQL

ÍNDICE INTRODUCCIÓN...17

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su:

BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA.

Access SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.

Álvaro Herrera Modelamiento Avanzado de Datos con PostgreSQL

EXAMEN TEMAS 3, 4 y 5. CREACIÓN Y EXPLOTACIÓN DE UNA BASE DE DATOS

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo:

EL LENGUAJE DE BASES DE DATOS SQL (DDL, DML, TRIGGERS Y STORE PROCEDURES)

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig

Base de datos Lenguaje SQL

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

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

Introducción a las bases de datos.

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

S.Q.L. (Lenguaje de Consulta Estructurada) Consultas Avanzadas. Sistemas de Bases de Datos II - ITS EMT CETP

Sistemas de Datos Curso: Ernesto Chinkes. SQL Básico Algebra Relacional

ORACLE 10g. Descripción A QUIEN VA DIRIGIDO?

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

APÉNDICE SQL (Structures Query Language)

Tema 4. Lenguajes de consulta comerciales

FUNCIONES EN SQL SERVER

TEMA. Sistema de Gestión de Bases de Datos. Sistemas Avanzados de Recuperación de Información (SARI)

DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios.

FIUBA /75.28 BASE DE DATOS Agosto 1992 SQL

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

Diseño de Bases de Datos y Seguridad en la Información &8562

Acceso a bases de datos MySQL con PHP

2.4 Manipulación de datos

DML SQL II. Comparaciones con relaciones

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

Referencia SQL en la versión de HUGOSQL White Paper por: HUGOSQL 2012

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

Práctica 3. Consultas SQL

6- Combinación de tablas

SQL Server FEMEPA SQL Server 2000

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1)

ÍNDICE INTRODUCCIÓN...13

MANUAL BÁSICO DEL LENGUAJE SQL

Documento Informativo

Grandes volúmenes de datos Vistas materializadas. bases de datos

Sistemas Informáticos I Resumen

Crear BD en. Isis Bonet Cruz, PhD

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

Sub consultas avanzadas

Procesamiento y Optimización de consultas Material Preliminar en preparación

CURSO DE SQL SERVER 2005

//Sección de manejo de excepciones. Las rutinas de manejo de errores //aparecen aqui

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

Transcripción:

BASES DE DATOS I VISTAS curso 2008

Vistas: conceptos Una VISTA es una tabla virtual derivada de otras tablas (que pueden ser tablas base o también otras vistas). Sus tuplas no se almacenan sino que se generan a partir de las tablas de las que depende (no necesariamente existen en forma física, por ello se las considera tablas virtuales) Son útiles para usar, como si fueran tablas, consultas que se efectúan frecuentemente, y también para cuestiones de seguridad.

Vistas: Sintaxis SQL3: CREATE VIEW <name> [ ( <column> [,...] ) ] AS <query > [ WITH [ CASCADE LOCAL ] CHECK OPTION ] ; En Oracle: CREATE [OR REPLACE] VIEW [FORCE NOFORCE ] <name> [( <column> [,...] )] AS <query> [WITH CHECK OPTION [CONSTRAINT constraint]] [WITH READ ONLY [CONSTRAINT constraint]];

Definición - ejemplos PROVEEDOR (id_prov, nombreap, situación, ciudad) PRODUCTO (id_prod, nombre, color, peso, ciudad) ENVIO (id_prov, id_prod, cant) Crear una vista de los proveedores cuya situación sea superior a 15. CREATE VIEW Buenos_proveedores (prov, sit, ciudad ) AS SELECT id_prov, situación, ciudad FROM PROVEEDORES WHERE situación > 15; Crear una vista que corresponda a los proveedores cuya situación sea superior a 15 pero que no sean de Capital Federal. CREATE VIEW Buenos_proveedores_noCapital AS SELECT * FROM Buenos_proveedores WHERE ciudad <> Capital Federal ;

Definición - ejemplos Los nombres de columna deberán especificarse explícitamente si: Cualquier columna se deriva de una función, una expresión operacional o un literal. Dos o mas columnas de la vista reciben el mismo nombre CREATE VIEW EnvioProveedor (id_prov, canttotal ) AS SELECT id_prov, SUM (cant) FROM ENVIO GROUP BY id_prov; CREATE VIEW Pareja_de_ciudades (ciudadprov, ciudadprod) AS SELECT DISTINCT PROVEEDORES.ciudad, PRODUCTO.ciudad FROM PROVEEDORES, PRODUCTO, ENVIO WHERE PROVEEDORES.id_prov = ENVIO.id_prov AND ENVIO.id_prod = PRODUCTO.id_prod ;

Consulta y eliminación Consulta: como si fuera una tabla base, por ejemplo SELECT * FROM Buenos_proveedores WHERE prov < 30 ORDER BY ciudad; DROP VIEW <Nombre-vista > [CASCADE RESTRICT ]; Ejemplo: DROP VIEW Buenos_proveedores;

Actualización de Vistas Si la vista es actualizable y está definida con: WITH CHECK OPTION: : todos los INSERT y UPDATE sobre la vista son chequeados para asegurar que los datos satisfacen la condición de definición de la Vista. WITH LOCAL CHECK OPTION: : chequea la integridad sobre la vista. WITH CASCADE CHECK OPTION : chequea la integridad sobre la vista y cualquier vista dependiente.

Ejemplos CREATE VIEW Buenos_proveedores (prov, sit, ciudad ) AS SELECT id_prov, situación, ciudad FROM PROVEEDORES WHERE situación > 15 WITH CHECK OPTION ; Insert into Buenos_proveedores (prov prov, sit, ciudad ) values (10, 20, Paris ); n Update Buenos_proveedores set situacion = 5 where prov = 20; X Insert into Buenos_proveedores (prov, sit, ciudad ) values (8, 5, Roma ); X

Vistas actualizables No toda vista es actualizable. Es SQL-actualizable si: Está definida a partir de una única tabla Conserva la clave (primaria o alternativa) No está definida mediante agrupación o funciones de agregación No incluye la cláusula Distinct No incluye subconsultas No se define mediante unión, intersección, diferencia

Ejemplos - Vistas actualizables No todas las vistas son actualizables: CREATE VIEW Proveedor_ciudad (id_prov, ciudad )AS SELECT id_prov, ciudad FROM PROVEEDORES; ACTUALIZABLE CREATE VIEW Situación_ciudad (situación, ciudad )AS SELECT situación, ciudad FROM PROVEEDORES; NO ACTUALIZABLE Insert into Proveedor_ciudad values (1, Roma ); Insert into Situación_ciudad values (40, Roma ); n X

Ejemplos - Vistas actualizables CREATE VIEW Proveedor_Londres AS SELECT id_prov, nombreap, situacion, ciudad FROM PROVEEDORES WHERE ciudad = Londres ; ACTUALIZABLE Insert into Proveedor_Londres values (15, Martin Lopez, 5, Tandil ); n CREATE VIEW EnvioProveedor (id_prov, canttotal ) AS SELECT id_prov, SUM (cant cant) FROM ENVIO GROUP BY id_prov; Insert into EnvioProveedor (1,100); X NO ACTUALIZABLE

Actualización de Vistas en Oracle Motivos por los que una vista no es actualizable en Oracle: Contiene operadores de conjuntos (UNION, INTERSECT, ) Contiene el operador DISTINCT. Contiene funciones agregadas (SUM, AVG,..). Contiene una cláusula GROUP BY Se define mediante una subconsulta en una lista SELECT Se define mediante JOIN (con excepción de key-preserved table *) * Una tabla base o una vista es considerada una key-preserved table si cada valor clave (primary-key o unique-key) en cada tabla base es también clave en el resultado de la Join View.