Álvaro Herrera Modelamiento Avanzado de Datos con PostgreSQL

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Álvaro Herrera alvherre@dcc.uchile.cl Modelamiento Avanzado de Datos con PostgreSQL"

Transcripción

1 Modelamiento Avanzado de Datos con PostgreSQL Álvaro Herrera Quinto Encuentro Nacional de Linux, Chile

2 Contenidos Restricciones Check OUTER JOIN Operaciones de Conjuntos Agrupamiento y Agregación Vistas Subconsultas Set Returning Functions

3 Restricciones CHECK Parte I Restricciones Check

4 Restricciones CHECK Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos

5 Qué son Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos Restricciones Aplicadas a columnas de una tabla Verificadas cada INSERT UPDATE

6 Para qué sirven Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos Mantención de la integridad Medida básica (después de llaves foráneas) Restringir valores lo más posible

7 Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos Cómo se implementan CREATE TABLE En CREATE TABLE CREATE TABLE... ( nombre tipo restriccion... ) donde restricción es CONSTRAINT nombre CHECK condicion

8 Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos Cómo se implementan ALTER TABLE Usando ALTER TABLE ALTER TABLE tabla ADD CONSTRAINT foo CHECK condicion

9 Ejemplos Trivial Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos CREATE TABLE... ( campo1 INTEGER NOT NULL, campo2 INTEGER CHECK (campo2 IS NOT NULL),... );

10 Restricciones CHECK Ejemplos Con ALTER TABLE Qué son Para Que Sirven Cómo Se Implementan Ejemplos CREATE TABLE foobar ( campo1 INTEGER NOT NULL, campo2 INTEGER,... ); ALTER TABLE foobar ADD CONSTRAINT campo2_positivo CHECK (campo2 > 0)

11 Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos Ejemplos Restringiendo el Dominio CREATE TABLE foobar ( campo1 INTEGER CHECK (campo1 > 20 AND campo1 < 100),... );

12 RUT Restricciones CHECK Qué son Para Que Sirven Cómo Se Implementan Ejemplos CREATE TABLE personas ( rut INTEGER CHECK (rut IS NULL = dv IS NULL), dv CHAR(1) CHECK (dv = digitoverificador(rut)),... );

13 Introducción Formas de OUTER JOIN Usos Parte II OUTER JOIN

14 Introducción Formas de OUTER JOIN Usos Introducción Qué es OUTER JOIN Tablas de Ejemplo Formas de OUTER JOIN LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN Usos

15 Introducción Formas de OUTER JOIN Usos Qué es OUTER JOIN Tablas de Ejemplo Qué es OUTER JOIN Una forma especial de JOIN Para usarse en la cláusula FROM de SELECT Sintaxis similar a INNER JOIN Diferencia: incluye filas que no tienen equivalente

16 Introducción Formas de OUTER JOIN Usos Qué es OUTER JOIN Tablas de Ejemplo Tablas de Ejemplo tabla departamentos deptoid nombredepto 1 Desarrollo 2 Operaciones 3 Administración tabla empleados empleadoid nombreempleado deptoid 1 Joel Iturra 1 2 Aldrin Martoq 2 3 Juan José Sierralta

17 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN Formas de OUTER JOIN LEFT Se incluyen filas de la tabla de la izquierda que no tienen correspondencia en la tabla de la derecha SELECT * FROM departamentos LEFT JOIN empleados ON (departamentos.deptoid = empleados.deptoid) En este caso, la tabla departamentos.

18 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN LEFT OUTER JOIN Comparación con INNER SELECT * FROM departamentos AS d JOIN empleados AS e ON (d.deptoid = e.deptoid) deptoid nombre empleadoid nombre 1 Desarrollo 1 Joel Iturra 2 Operaciones 2 Aldrin Martoq

19 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN LEFT OUTER JOIN Comparación (cont.) SELECT * FROM departamentos AS d LEFT JOIN empleados AS e ON (d.deptoid = e.deptoid) deptoid nombre empleadoid nombre deptoid 1 Desarrollo 1 Joel Iturra 1 2 Operaciones 2 Aldrin Martoq 2 3 Administración Incluye el departamento Administración

20 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN Formas de OUTER JOIN RIGHT Como LEFT OUTER JOIN, pero en lugar de agregar registros de la tabla de la izquierda, agrega los de la tabla derecha.

21 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN RIGHT OUTER JOIN Ejemplo SELECT * FROM departamentos AS d RIGHT JOIN empleados AS e ON (d.deptoid = e.deptoid) deptoid nombre empleadoid nombre deptoid 1 Desarrollo 1 Joel Iturra 1 2 Operaciones 2 Aldrin Martoq 2 3 Juan José Sierralta Incluye a Juanjo Sierralta. Cambiar LEFT por RIGHT e intercambiar el orden de las tablas entrega el mismo resultado

22 Introducción Formas de OUTER JOIN Usos LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN Formas de OUTER JOIN FULL Incluye registros sin equivalentes de la tabla derecha y de la tabla izquierda. SELECT * FROM departamentos AS d FULL JOIN empleados AS e ON (d.deptoid = e.deptoid) deptoid nombre empleadoid nombre deptoid 1 Desarrollo 1 Joel Iturra 1 2 Operaciones 2 Aldrin Martoq 2 3 Administración 3 Juan José Sierralta Incluye tanto Administración como Juanjo.

23 Introducción Formas de OUTER JOIN Usos Algunos usos Desplegar relaciones uno-a-uno o muchos-a-uno opcionales Calcular totales usando 0 cuando no hay equivalencia (ej. lista de departamentos y cuantos empleados en c/u, incluyendo departamentos sin empleados) Desplegar varias tablas-resumen con una sola consulta (ej. lista de departamentos con lista de empleados)

24 Introducción Formas de OUTER JOIN Usos $prev_depto_id = undef; while ($hr = $sth->fetchrow_hashref) { if (not defined $hr->{ depto_id }) { print "Empleado sin depto: ".$hr->{ nombre }; $prev_depto_id = undef; next; } if (not defined $prev_depto_id or $prev_depto_id!= $hr->{ depto_id }) { print "Departamento ".$hr->{ dn }; } if (defined $hr->{ empleado_id }) { print " Empleado: ".$hr->{ nombre }; } $prev_depto_id = $hr->{ depto_id }; }

25 Introducción Formas de OUTER JOIN Usos Departamento Desarrollo Empleado: Joel Iturra Departamento Operaciones Empleado: Aldrin Martoq Empleado sin depto: Juan José Sierralta Departamento Administración

26 Introducción UNION INTERSECT EXCEPT Parte III Operaciones de Conjunto

27 Introducción UNION INTERSECT EXCEPT Introducción Operaciones de Conjuntos Tablas de Ejemplo UNION Presentación Ejemplo INTERSECT Presentación Tablas de Ejemplo Ejemplo Observaciones EXCEPT Presentación Ejemplo

28 Introducción UNION INTERSECT EXCEPT Operaciones de Conjuntos Operaciones de Conjuntos Tablas de Ejemplo UNION ( ) INTERSECT ( ) EXCEPT (\)

29 Tablas de Ejemplo Introducción UNION INTERSECT EXCEPT Operaciones de Conjuntos Tablas de Ejemplo tabla departamentos deptoid nombredepto 1 Desarrollo 2 Operaciones tabla empleados empleadoid nombreempleado deptoid 1 Joel Iturra 1 2 Aldrin Martoq 2 tabla parientes parienteid empleadoid nombre 1 1 Elena 2 1 Alejandro 3 2 Ghislaine

30 UNION Introducción UNION INTERSECT EXCEPT Presentación Ejemplo Permite unir resultados de varias consultas Resultados deben ser compatibles misma cantidad de columnas tipos de cada columna debe ser compatibles

31 UNION Ejemplo Introducción UNION INTERSECT EXCEPT Presentación Ejemplo SELECT nombre FROM empleados UNION SELECT nombre FROM parientes; nombre Aldrin Martoq Alejandro Elena Ghislaine Joel Iturra

32 Introducción UNION INTERSECT EXCEPT UNION Observaciones Presentación Ejemplo El resultado está ordenado! UNION elimina repetidos Implementación: para eliminar repetidos, se ordena el conjunto Para evitarlo, use UNION ALL Además, es más eficiente Cómo distinguir un pariente de un empleado? Use constantes! Consistencia r00lz

33 Introducción UNION INTERSECT EXCEPT UNION Ejemplo 2 (malo) Presentación Ejemplo SELECT empleadoid AS id, NULL, nombre FROM empleados UNION ALL SELECT parienteid, empleadoid, nombre FROM parientes ORDER BY 1 id?column? nombre 1 Joel Iturra 1 1 Elena 2 Aldrin Martoq 2 1 Alejandro 3 2 Ghislaine

34 Introducción UNION INTERSECT EXCEPT UNION Ejemplo 3 (bueno) Presentación Ejemplo SELECT p AS tipo, empleadoid, nombre, NULL as deptoid FROM parientes UNION ALL SELECT e, empleadoid, nombre, deptoid FROM empleados ORDER BY 2, 1; tipo empleadoid nombre deptoid e 1 Joel Iturra 1 p 1 Elena p 1 Alejandro e 2 Aldrin Martoq 2 p 2 Ghislaine

35 Introducción UNION INTERSECT EXCEPT Presentación Tablas de Ejemplo Ejemplo Observaciones INTERSECT Entrega la intersección de dos conjuntos Como UNION, los conjuntos deben ser compatibles Compara filas completas, columna a columna Ejemplo: agregamos una tabla de proyectos, los empleados pueden participar en más de un proyecto

36 Tablas de Ejemplo Introducción UNION INTERSECT EXCEPT Presentación Tablas de Ejemplo Ejemplo Observaciones tabla proyectos proyectoid nombre 1 Plan Z 2 E.P.E. (El Proyecto E.P.E.) tabla empleados_proyectos empleadoid proyectoid

37 Modelo del Ejemplo Introducción UNION INTERSECT EXCEPT Presentación Tablas de Ejemplo Ejemplo Observaciones SELECT e.nombre, p.nombre FROM empleados AS e JOIN empleados_proyectos USING (empleadoid) JOIN proyectos AS p USING (proyectoid); nombre Joel Iturra Joel Iturra Aldrin Martoq nombre Plan Z E.P.E. E.P.E.

38 INTERSECT Ejemplo Introducción UNION INTERSECT EXCEPT Presentación Tablas de Ejemplo Ejemplo Observaciones Los empleados que trabajan en ambos proyectos: SELECT empleados.nombre FROM empleados JOIN empleados_proyectos USING (empleadoid) JOIN proyectos USING (proyectoid) WHERE proyectos.nombre = E.P.E. INTERSECT SELECT empleados.nombre FROM empleados JOIN empleados_proyectos USING (empleadoid) JOIN proyectos USING (proyectoid) WHERE proyectos.nombre = Plan Z ; nombre Joel Iturra

39 Introducción UNION INTERSECT EXCEPT Presentación Tablas de Ejemplo Ejemplo Observaciones INTERSECT Observaciones Se compara igualdad de cada fila Todas las columnas deben ser iguales! Generalmente se extraerá sólo la llave primaria, en una subconsulta, y luego unirlo usando WHERE llave IN (SELECT... INTERSECT...) Como UNION, se eliminan los registros repetidos. Use INTERSECT ALL para impedir esto.

40 EXCEPT Introducción UNION INTERSECT EXCEPT Presentación Ejemplo Entrega la diferencia de conjuntos Conjuntos deben ser compatibles Como INTERSECT, compara filas completas, columna a columna Generalmente se usará para extraer la llave primaria en una subconsulta, juntándolo todo con la consulta externa. Como UNION e INTERSECT, elimina registros repetidos. Use EXCEPT ALL para impedirlo.

41 EXCEPT Ejemplo Introducción UNION INTERSECT EXCEPT Presentación Ejemplo Empleados que trabajan en E.P.E. y no en Plan Z. SELECT empleados.nombre FROM empleados JOIN empleados_proyectos USING (empleadoid) JOIN proyectos USING (proyectoid) WHERE proyectos.nombre = E.P.E. EXCEPT SELECT empleados.nombre FROM empleados JOIN empleados_proyectos USING (empleadoid) JOIN proyectos USING (proyectoid) WHERE proyectos.nombre = Plan Z ; nombre Aldrin Martoq

42 Qué es GROUP BY Funciones de Agregación Parte IV Agrupamiento y Agregación

43 Qué es GROUP BY Funciones de Agregación Qué es GROUP BY Funciones de Agregación

44 Qué es GROUP BY Funciones de Agregación Agrupación Agrupar filas Varias filas de entrada una fila de salida Para obtener resumenes, etc SELECT... GROUP BY <campo1>, <campo2>,... Válidos en SELECT Campos en GROUP BY Funciones de agregación

45 Qué es GROUP BY Funciones de Agregación Ejemplo SELECT... FROM autores GROUP BY nombre; Obtiene datos de la tabla autores Agrupa juntos a los autores con el mismo nombre Así tal cual, no tiene mucha utilidad

46 Qué es GROUP BY Funciones de Agregación Funciones de Agregación Dados varios elementos de una columna, entregan un elemento Funciones incluidas: Cantidad de elementos en un grupo Mínimo o máximo entre todos los elementos Suma, promedio, desviación estándar Se pueden crear nuevas funciones de agregación SELECT d.nombre, count(e.nombre), avg(empleadoid), stddev(empleadoid) FROM empleados AS e JOIN departamentos AS d USING (deptoid) GROUP BY deptoid, d.nombre;

47 Ejemplo de Agregación Qué es GROUP BY Funciones de Agregación SELECT c.clienteid, c.nombre, count(*) FROM facturas JOIN clientes AS c USING (clienteid) GROUP BY c.clienteid, c.nombre;

48 Qué es GROUP BY Funciones de Agregación Ejemplo de Función de Agregación CREATE FUNCTION concatenar_comas(text, TEXT) RETURNS TEXT IMMUTABLE LANGUAGE plpgsql CALLED ON NULL INPUT AS BEGIN IF $1 IS NULL THEN RETURN $2; ELSIF $2 IS NULL THEN RETURN $1; END IF; RETURN $1, $2; END ;

49 Qué es GROUP BY Funciones de Agregación Ejemplo de Función de Agregación (cont.) SELECT concatenar_comas( uno, dos ); concatenar_comas uno, dos CREATE AGGREGATE concat_comas ( basetype=text, sfunc=concatenar_comas, stype=text);

50 Qué es GROUP BY Funciones de Agregación Ejemplo de Función de Agregación (cont.) SELECT concat_comas(e.nombre), d.nombre, d.deptoid FROM empleados e JOIN departamentos d USING (deptoid) GROUP BY d.nombre, d.deptoid; concat_comas nombre deptoid Marcelo, Daniel Operaciones 2 Joel, Aldrin, Juanjo Desarrollo 1 (2 filas)

51 Vistas Parte V Vistas

52 Vistas Vistas Introducción Para que? Ejemplo Trivial Acceso Limitado

53 Qué son las vistas? Vistas Introducción Para que? Ejemplo Trivial Acceso Limitado Presentación de consultas SELECT al lado del servidor Pseudo tablas No pueden ser actualizadas (INSERT / UPDATE / DELETE)

54 Para qué se usan las vistas? Vistas Introducción Para que? Ejemplo Trivial Acceso Limitado Disminuir tráfico entre cliente y servidor Simplificar consultas Factorizar funcionalidad entre aplicaciones Cambiar tablas manteniendo interfaz consistente a través de vistas (e.g. durante desarrollo o transiciones)

55 Ejemplo trivial Vistas Introducción Para que? Ejemplo Trivial Acceso Limitado CREATE VIEW empleados_deptos_v AS SELECT empleadoid, deptoid, d.nombre AS departamento, e.nombre AS empleado FROM empleados AS e JOIN departamentos AS d USING (deptoid); SELECT * FROM empleados_deptos_v JOIN empleados_proyectos_v USING (empleadoid, proyectoid);

56 Vistas Otorgando Acceso Limitado Introducción Para que? Ejemplo Trivial Acceso Limitado CREATE TABLE shadow ( username TEXT, password TEXT,... ); CREATE VIEW passwd AS SELECT username, ******** ::TEXT AS password FROM shadow; GRANT SELECT ON passwd TO usuario;

57 Vistas Introducción Para que? Ejemplo Trivial Acceso Limitado Otorgando Acceso Limitado (cont.) SELECT * FROM shadow; ERROR: permiso denegado a la relación shadow SELECT * FROM passwd; username password alvherre ******** (1 fila)

58 Parte VI Subconsultas

59

60 Subconsultas en FROM Usar una consulta en lugar de una tabla También conocido como "inline view" Otorga poder adicional para agrupar para aplicar condiciones en el conjunto interno A veces se puede convertir en JOIN

61 Ejemplo Trivial SELECT * FROM ( SELECT * FROM empleados ORDER BY salario DESC LIMIT 3 ) AS empleados ORDER BY nombre

62 Ejemplo Trivial (cont.) SELECT * FROM ( SELECT * FROM departamentos ORDER BY gastos DESC LIMIT 1 ) AS deptos JOIN empleados USING (depto_id); SELECT * FROM (... ) AS deptos, empleados WHERE empleados.depto_id = deptos.depto_id;

63 Ejemplo Complejo SELECT count(*), inicio FROM ( SELECT servidor_id, EXTRACT(epoch FROM inicio-$inicio) / EXTRACT(epoch FROM $duracion_tick) AS inicio FROM intervalos INNER JOIN eventos ON ((foo.inicio, foo.final) OVERLAPS (date, fech WHERE obj_id=$objid AND (date, fecha+duracion) OVERLAPS ($inicio, $i AND NOT esokstatus(status) ) as foo

64 Introducción Retorno PL/pgSQL SQL Parte VII Set-Returning Functions

65 Introducción Retorno PL/pgSQL SQL Introducción Qué son Ejemplo: JOIN con una tabla Ejemplo: JOIN con una subconsulta Retorno Tipos de Retorno Sintaxis para Retorno PL/pgSQL Sintaxis Ejemplo SQL

66 Introducción Retorno PL/pgSQL SQL Set-returning Functions (SRF) Qué son Ejemplo: JOIN con una tabla Ejemplo: JOIN con una subconsulta Funciones que retornan tablas En cláusula FROM hacer JOIN con otras tablas otras funciones subconsultas Definir tipo de retorno

67 Ejemplo 1 Introducción Retorno PL/pgSQL SQL Qué son Ejemplo: JOIN con una tabla Ejemplo: JOIN con una subconsulta SELECT * FROM una_srf(arg1, ) JOIN otra_srf( ) USING (columna) JOIN una_tabla ON (condicion )

68 Ejemplo 2 Introducción Retorno PL/pgSQL SQL Qué son Ejemplo: JOIN con una tabla Ejemplo: JOIN con una subconsulta SELECT * FROM una_tabla, una_srf( ), (SELECT tres, cuatro FROM otra_srf( ) WHERE ) WHERE

69 Tipos de retorno Introducción Retorno PL/pgSQL SQL Tipos de Retorno Sintaxis para Retorno Lo especial de una SRF RETURNS SETOF foo foo puede ser un tipo una tabla una definición anónima

70 Sintaxis para retorno Introducción Retorno PL/pgSQL SQL Tipos de Retorno Sintaxis para Retorno CREATE FUNCTION una_srf ( ) RETURNS SETOF tabla ; SELECT * FROM una_srf (foo, bar, ); CREATE TYPE foo (a int, b int); CREATE FUNCTION otra_srf ( ) RETURNS SETOF foo ; SELECT * FROM otra_srf( );

71 Introducción Retorno PL/pgSQL SQL Sintaxis para retorno (cont.) Tipos de Retorno Sintaxis para Retorno 3. CREATE FUNCTION tercera_srf( ) RETURNS SETOF RECORD ; SELECT * FROM tercera_srf( ) AS tercera(definicion de tipo);

72 PL/pgSQL: sintaxis Introducción Retorno PL/pgSQL SQL Sintaxis Ejemplo RETURN NEXT foo acumula la tupla foo para retornar RETURN termina la función y devuelve todas las tuplas retornadas FOR SELECT LOOP RETURN NEXT END LOOP; RETURN;

73 Introducción Retorno PL/pgSQL SQL Dividir un intervalo en trozos Sintaxis Ejemplo DECLARE inicio ALIAS FOR $1; valor TIMESTAMP WITH TIME ZONE; final ALIAS FOR $2; paso ALIAS FOR $3; ret RECORD;

74 Introducción Retorno PL/pgSQL SQL Sintaxis Ejemplo Dividir un intervalo en trozos (cont.) BEGIN valor := inicio; LOOP IF valor >= final THEN RETURN; END IF; SELECT INTO ret valor, valor + paso; RETURN NEXT ret; valor := (valor + paso); END LOOP; END;

75 Introducción Retorno PL/pgSQL SQL Dividir un intervalo en trozos Sintaxis Ejemplo SELECT * FROM intervalos ( , , 3 hour ) AS foo(inicio TIMESTAMP WITH TIME ZONE, fin TIMESTAMP WITH TIME ZONE); inicio fin :00: :00: :00: :00: :00: :00: :00: :00:00-03

76 SRF en SQL Introducción Retorno PL/pgSQL SQL CREATE FUNCTION getfoo(int) RETURNS setof foo AS SELECT * FROM foo WHERE fooid = $1; LANGUAGE SQL; SELECT * FROM getfoo(1);

Funciones y TriggersIntroducción, Ejemplos

Funciones y TriggersIntroducción, Ejemplos Funciones y Triggers Introducción, Ejemplos 13 de noviembre de 2004 Contenidos Funciones: para qué? Lenguajes Tipos de funciones Creación de funciones tradicionales SRFs Funciones para triggers Indices

Más detalles

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

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

Bases de Datos 2. Teórico

Bases de Datos 2. Teórico Bases de Datos 2 Teórico Structured Query Language (SQL) Características de SQL Standard Opera sobre conjuntos de tuplas: incluso para las operaciones de inserción, borrado y actualización. No elimina

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

Más detalles

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

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER

Más detalles

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

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011 Structured Query Language () Fundamentos de Bases de Datos InCo - Un poco de historia Lenguajes de consulta relacionales: SEQUEL (IBM-1970) QUEL (Ingres-1970) QBE (IBM-1970) es el lenguaje comercial más

Más detalles

Unidad. Lenguaje SQL. (Structured Query Language)

Unidad. Lenguaje SQL. (Structured Query Language) Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

Bases de Datos - 2006. SQL - Ejemplos

Bases de Datos - 2006. SQL - Ejemplos Bases de Datos - 2006 SQL - Ejemplos Consideramos la siguiente base de datos relacional: persona(dni,primer-nombre,apellido) biblioteca(nombre-biblioteca,calle,número) libro(título,isbn,editorial,edición)

Más detalles

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

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas

Más detalles

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML) SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6

Más detalles

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

Tema 4. SQL. Juan Ignacio Rodríguez de León Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional

Más detalles

ÍNDICE PRIMERA PARTE... 17

ÍNDICE PRIMERA PARTE... 17 ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS

Más detalles

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

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

Práctica 3. Consultas SQL

Práctica 3. Consultas SQL Práctica 3. Consultas SQL 1. Enunciado En este ejercicio se realizarán consultas SQL que respondan a las preguntas que se plantearán sin utilizar QBE. Dada una base de datos denominada Empresa y definida

Más detalles

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

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 Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

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

CONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS Hasta ahora hemos visto consultas que obtienen los datos de una sola tabla,

Más detalles

Motores de Base de Datos Libres: Postgresql y MySql. Ing. Ricardo Naranjo Faccini, M.Sc

Motores de Base de Datos Libres: Postgresql y MySql. Ing. Ricardo Naranjo Faccini, M.Sc XXIV SALÓN DE INFORMÁTICA Motores de Base de Datos Libres: Postgresql y MySql Ing. Ricardo Naranjo Faccini, M.Sc Novell Product Manager Nexsys de Colombia S.A. Octubre 13 de 2004 Encontrando el camino

Más detalles

SQL Server 2000. FEMEPA SQL Server 2000

SQL Server 2000. FEMEPA SQL Server 2000 FEMEPA Partes del SQL El lenguaje SQL está compuesto de varios sub-lenguajes, entre los cuales destacan los tres siguientes: DML. Lenguaje de definición de datos. Todas las sentencias de manipulación de

Más detalles

Sub consultas avanzadas

Sub consultas avanzadas Sub consultas avanzadas Objetivo Después de completar este capítulo conocerá lo siguiente: Escribir una consulta de múltiples columnas Describir y explicar el comportamiento de las sub consultas cuando

Más detalles

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

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 SQL + Procedural La mayoría de los DBMS actuales permiten extensiones de SQL para la creación de bloques

Más detalles

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

Base de datos I Facultad de Ingeniería. Escuela de computación. Base de datos I Facultad de Ingeniería. Escuela de computación. Introducción Este manual ha sido elaborado para orientar al estudiante de Bases de datos I en el desarrollo de sus prácticas de laboratorios,

Más detalles

2.5.- El lenguaje estándar SQL

2.5.- El lenguaje estándar SQL 25- El lenguaje estándar SQL El SQL es un lenguaje estándar de definición y manipulación (y consulta) de bases de datos relacionales El SQL estándar incluye: Características del Álgebra Relacional Características

Más detalles

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

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Haga clic para PostgreS cambiar el estilo

Haga clic para PostgreS cambiar el estilo Taller # 1 Uso y Manejo l Sistema Gestor Bases Datos PostgreSQL Luis García Computación ldgarc@gmail.com Contenido - Creación Tablas (Create Table...) ( Check Foreign Keys ) - Inserción Datos (Insert Into...)

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales 2da. Parte Bases de Datos Relacionales Objetivos de la Clase SQL. Tipos de sentencias SQL Describir los tipos de dato que se pueden utilizar al especificar la definición de columnas. Sentencias SQL Select.

Más detalles

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

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este

Más detalles

SQL. Orígenes y Evolución

SQL. Orígenes y Evolución SQL 1 SQL. Orígenes y Evolución 2 SQL: Estándar oficial 3 Funciones de SQL DDL Data Definition Language Creación n de estructuras de la base de datos Integridad de los datos DML Data Manipulation Language

Más detalles

Lenguaje para descripción de datos

Lenguaje para descripción de datos Amparo López Gaona tación Fac. Ciencias, UNAM Mayo 2012 Definición de Datos El lenguaje para definición de datos permite especificar: Esquema de cada relación. El dominio de cada atributo. Restricciones

Más detalles

Crear BD en. Isis Bonet Cruz, PhD

Crear BD en. Isis Bonet Cruz, PhD Crear BD en Isis Bonet Cruz, PhD SQL Server Microsoft SQL Server es un sistema de administración y análisis de bases de datos relacionales de Microsoft para soluciones de comercio electrónico, línea de

Más detalles

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL. 2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla

Más detalles

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

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

CURSO TRANSACT SQL MANUAL TÉCNICO CURSO TRANSACT SQL MANUAL TÉCNICO 1

CURSO TRANSACT SQL MANUAL TÉCNICO CURSO TRANSACT SQL MANUAL TÉCNICO 1 CURSO TRANSACT SQL MANUAL TÉCNICO CURSO TRANSACT SQL MANUAL TÉCNICO 1 Introducción... 3 Consultas Básicas... 3 Consultas de Selección... 3 Consultas de Modificación... 7 Consultas de Combinación... 9 Consultas

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Amparo López Gaona México, D.F. Semestre 2000-I Restricciones de Integridad Las principales restricciones de integridad que pueden indicarse son: La clave primaria. Claves candidatas.

Más detalles

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

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales * Definición de datos en SQL * Consulta de datos en SQL - Estructura básica de una sentencia

Más detalles

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

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc). LENGUAJE SQL Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los datos, este mismo es que permite crear la estructura de la base de datos. Lenguaje de Definicion

Más detalles

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

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional PROGRAMAS DE ESTUDIO FORMATO 7 NOMBRE DE LA ASIGNATURA INTRODUCCIÓN A SQL CICLO, AREA O MODULO Área de Formación Profesional CLAVE DE LA ASIGNATURA IT222 OBJETIVOS GENERALES DE LA ASIGNATURA Al final del

Más detalles

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h Alias Nombres Tablas ( L19 ) UNA VEZ INDICADO SE UTI LIZAN EN LAS CONSULTAS, EN LUGAR DE ESCRIBIR EL NOMBRE COMPLETO DE LA TABLA SE INDICAN EN LA CLAÚSULA FROM PALABRA CLAVE OPCIONAL AS SINTAXIS [ FROM

Más detalles

6- Combinación de tablas

6- Combinación de tablas Objetivos: 6- Combinación de tablas Utiliza sentencias para unir los datos de diferentes tablas. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Script de bases de datos. Introducción

Más detalles

Tema 4. Manipulación de datos con SQL

Tema 4. Manipulación de datos con SQL Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de

Más detalles

PL/PGSQL. Extensión "procedural" de SQL

PL/PGSQL. Extensión procedural de SQL PL/PGSQL Extensión "procedural" de SQL Pero primero triggers DROP TABLE producto cascade; CREATE TABLE producto( id int PRIMARY KEY, vendido timestamp); DROP FUNCTION modificacion() cascade; CREATE FUNCTION

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE IGNATURA NOMBRE DE LA IGNATURA LSC 2009-2 12001 Administración de Bases de Datos PRÁCTICA No. 5 LABORATORIO DE NOMBRE DE LA PRÁCTICA

Más detalles

SENTENCIAS Y CONSULTAS EN SQL SERVER

SENTENCIAS Y CONSULTAS EN SQL SERVER SENTENCIAS Y CONSULTAS EN SQL SERVER En esta sección nos preocuparemos por conocer, las consultas en SQL que describiremos aquí. Para eso haremos un pequeño de las palabras claves que se utilizan en SQL,

Más detalles

Bases de Datos: Structured Query Language (SQL)

Bases de Datos: Structured Query Language (SQL) Structured Query Language (SQL): Introducción Bases de Datos: Structured Query Language (SQL) Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

Más detalles

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

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo: TEMA 7.- EL ESTANDAR SQL. El Sublenguaje de Manipulación. El Sublenguaje de Definición. El Sublenguaje de Control. El Sublenguaje Huésped. 1. El Sublenguaje de Manipulación. (Se verá en la clase de problemas)

Más detalles

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

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Motores de Bases de Datos MySQL (Oracle) SQL Server (Microsoft) PostgreSQL Oracle (Oracle) DB2 (IBM) Informix (IBM) Instalación

Más detalles

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite

Más detalles

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

EL LENGUAJE DE BASES DE DATOS SQL (DDL, DML, TRIGGERS Y STORE PROCEDURES) EL LENGUAJE DE BASES DE DATOS SQL (DDL, DML, TRIGGERS Y STORE PROCEDURES) Por qué son importantes las Bases de Datos? Las Bases de Datos son el método preferido para el almacenamiento estructurado de datos.

Más detalles

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

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

Más detalles

Base de datos Procedimientos Almacenados y Funciones

Base de datos Procedimientos Almacenados y Funciones Base de datos Procedimientos Almacenados y Eduardo Saavedra A. Universidad Nacional Andrés Bello 4 de noviembre de 2008 Contenidos Ventajas 1 Ventajas 2 3 4 5 Conceptos Ejemplo 6 Procedimiento Almacenado

Más detalles

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

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 201-II SÍLABO 1. DATOS GENERALES UNIDAD DIDÁCTICA : DESARROLLO DE APLICACIONES CON BASE DE DATOS MÓDULO : DESARROLLO DE SOFTWARE

Más detalles

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

Sistemas de Datos Curso: Ernesto Chinkes. SQL Básico Algebra Relacional SQL Básico Algebra Relacional Modelo Relacional Conceptos Relación Esquema Operaciones del Algebra Relacional Selección Proyección Unión Diferencia Producto Cartesiano Algebra Relacional Selección (σ)

Más detalles

Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ;

Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ; 7. CONCEPTOS AVANZADOS DE CURSORES EXPLICITOS En este capítulo veremos algunas cosas bastante útiles respecto a los cursores explícitos, como pueden ser los cursores con parámetros (que nos permitirán

Más detalles

SQL. (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1

SQL. (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1 SQL (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1 Crear una Tabla (Esquema de Relación) (1) (Cascadas) postgres=# CREATE TABLE departamento ( codigo

Más detalles

Introducción a las bases de datos.

Introducción a las bases de datos. Introducción a las BBDD 1 Centro de Referencia Linux UAM-IBM Introducción a las bases de datos. Carmen B. Navarrete Navarrete carmen_navarrete@telefonica.net Introducción a las BBDD 2 Qué vamos a ver?

Más detalles

LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2)

LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2) LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2) N O T A S D E L A M A T E R I A B A S E S D E D A T O S I L I C E N C I A T U R A E N C I E N C I A S D E L A C O M P U T A C I Ó N U N I V E R S I D A D D E

Más detalles

2.4 Manipulación de datos

2.4 Manipulación de datos 2.4 Manipulación de datos 2.4.3. El lenguaje relacional SQL-92 Structured Query Language (lenguaje estructurado de consulta) Primer lenguaje de BD de alto nivel. Años 70. Diseñado e implementado en el

Más detalles

DML en SQL. Consultas sencillas usando el DML de SQL

DML en SQL. Consultas sencillas usando el DML de SQL DML en SQL Consultas sencillas usando el DML de SQL Base Datos de Películas Para rellenar la base se ha utilizado información proveniente de The internet Movie- Database http://www.imdb.com/list Todos

Más detalles

Índice. iii. Objetivos... 24

Índice. iii. Objetivos... 24 Índice Objetivos... 2 1: Modelación de base de datos... 2 2: Ejemplo de un caso de negocios... 3 2.1: Requerimientos de la aplicación... 4 2.2: Características de flujo de información... 4 2.3: Diagrama

Más detalles

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

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 Structured Query Language Lenguaje de consulta para bases de datos comerciales. Originalmente llamado

Más detalles

Otros objetos de Base de Datos

Otros objetos de Base de Datos Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Secuencias Triggers Vistas Código almacenado

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

Más detalles

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

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

BASES DE DATOS SQL MÁS S DE SQL (DML) OPERADOR UNION (L30) <SELECT1> UNION <SELECT2> UNION <SELECTN> Copyright 2006, 2007 Instituto Gala OPERADOR UNION (L30) UNION UNION OPERADOR INTERSECCION (L31) OPERADOR RELACIONAL INTERSECCION, DEVUELVE REGISTROS CON CAMPOS COMUNES. LAS TABLAS INVOLUCREADAS DEBEN TENER

Más detalles

Implementación de funciones definidas por el usuario

Implementación de funciones definidas por el usuario Implementación de funciones definidas por el usuario Contenido Introducción 1 Qué es una función definida por el usuario? 2 Definición de funciones definidas por el usuario 3 Ejemplos de funciones definidas

Más detalles

Ing. Santiago C. Pérez Laura Noussan Lettry Carlos Campos

Ing. Santiago C. Pérez Laura Noussan Lettry Carlos Campos UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL MENDOZA DEPARTAMENTO DE INGENIERÍA EN SISTEMAS DE INFORMACIÓN CÁTEDRA DE GESTIÓN DE DATOS 3º AÑO TRABAJO ESPECIAL Secuencia Didáctica de Comandos del

Más detalles

ADMINISTRACION DE BASES DE DATOS EN ORACLE

ADMINISTRACION DE BASES DE DATOS EN ORACLE SQL LENGUAJE ESTRUCTURADO DE CONSULTA El nacimiento del lenguaje SQL data de 1970 cuando E. F. Codd publica su libro: "Un modelo de datos relacional para grandes bancos de datos compartidos". Ese libro

Más detalles

Laboratorio Informix. Stored Procedures Triggers

Laboratorio Informix. Stored Procedures Triggers Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

1. DML. Las subconsultas

1. DML. Las subconsultas 1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se

Más detalles

Sql Basico. Seminar Introduction

Sql Basico. Seminar Introduction Sql Basico Seminar Introduction SQL Basico Sobre el modelo anterior de datos haremos un repaso de las consultas sql mas comunes. Devolver todos los datos de una tabla sin filtrar. Select campo_1, campo_2,

Más detalles

Sistemas de Bases de Datos II

Sistemas de Bases de Datos II Sistemas de Bases de Datos II SQL Avanzado Docente: T/RT Gonzalo Martínez CETP EMT Informática Introducción Esta diapositiva tratar consultas SQL avanzadas. Las mismas involucraran consultas SQL para obtener

Más detalles

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

Procesamiento y Optimización de consultas Material Preliminar en preparación Procesamiento y Optimización de consultas Material Preliminar en preparación Optimización SQL Identificar sentencias problemáticas Verificar las estadísticas Revisar los planes de ejecución Reestructurar

Más detalles

Lenguaje SQL. SQL Structured Query Languaje. Capacidades del Lenguaje. Estructura Básica de una consulta SQL

Lenguaje SQL. SQL Structured Query Languaje. Capacidades del Lenguaje. Estructura Básica de una consulta SQL Introducción a SQL Structured Query Languaje Elementos de Bases de Datos Bases de Datos Universidad Nacional del Sur - 2015 Lenguaje SQL SQL: Structured Query Language SQL es un lenguaje de manipulación

Más detalles

Tema 4. Lenguajes de consulta comerciales

Tema 4. Lenguajes de consulta comerciales Tema 4. Lenguajes de consulta comerciales 4.1. Introducción En el tema anterior hemos estudiado las operaciones del álgebra relacional y el cálculo relacional, imprescindibles para entender las consultas

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/88 Contenidos 1 Introducción a las bases de datos

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

Bases de datos: Sistemas de bases de datos:

Bases de datos: Sistemas de bases de datos: Bases de datos: Sistemas de bases de datos: Un sistema de bases de datos es básicamente un sistema para archivar en computador, es decir, es un sistema computarizado cuyo propósito general es mantener

Más detalles

Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER. GUÍA 2 Pág. 1

Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER. GUÍA 2 Pág. 1 Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER GUÍA 2 Pág. 1 I. OBJETIVOS Utilizar procedimientos almacenados Conocer el uso de los cursores

Más detalles

Curso SQL Nivel Avanzado 1. Miguel Jurado García

Curso SQL Nivel Avanzado 1. Miguel Jurado García Curso SQL Nivel Avanzado 1 Miguel Jurado García Temario Sesión 1: 1- Elementos de Sintaxis Uso de Variables Collation y las Fechas Construcción de Sentencias Dinámicas 2- SQL Server Management Studio Filtrado

Más detalles

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

Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula Vistas en InformiX Características Una vista es una tabla virtual cuyo contenido está definido por una consulta SELECT. Al igual que una tabla real, una vista tiene: un nombre un conjunto de columnas con

Más detalles

Tutorial de SQL - El comando SELECT

Tutorial de SQL - El comando SELECT Tutorial de SQL - El comando SELECT El objetivo de este documento es guiar su aprendizaje del comando SELECT de SQL. La idea es que, estando conectado a sql*plus, lea este material mientras ejercita simultáneamente

Más detalles

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

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 ESTRUCTURA DEL SEMINARIO Modulo 1: Crear y administrar una base de datos SQL Server Métodos para crear una base de datos SQLServer.

Más detalles

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

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas LENGUAJE SQL Que es SQL? SQL es un estándar un lenguaje estructurado para consultas SQL te permite acceder y manejar bases de datos SQL es un Estándar (ANSI American National Standards Institute) Que puede

Más detalles

EXPLOTACIÓN DE BASES DE DATOS CON ACCESS

EXPLOTACIÓN DE BASES DE DATOS CON ACCESS EXPLOTACIÓN DE BASES DE DATOS CON ACCESS Por qué son importantes las Bases de Datos? Las Bases de Datos son el método preferido para el almacenamiento estructurado de datos. Desde las grandes aplicaciones

Más detalles

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

BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA. BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA. La creación y manipulación de tablas Tipos de datos en SQL Operadores y condiciones lógicas La sentencia CREATE TABLE Estructura general Uso simplificado

Más detalles

SQL Los fundamentos del lenguaje

SQL Los fundamentos del lenguaje Introducción 1. Un poco de historia 11 2. Las normas SQL 12 3. Descripción rápida del modelo relacional 14 3.1 Principales conceptos del modelo relacional 15 3.2 Principales reglas 16 4. Los operadores

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE IGNATURA NOMBRE DE LA IGNATURA LSC 2009-2 12001 Administración de Bases de Datos PRÁCTICA No. 6 LABORATORIO DE NOMBRE DE LA PRÁCTICA

Más detalles

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación De Índices (L32) UNA TABLA PUEDE CONTENER VARIOS ÍNDICES SQL SERVER CREA AUTOMATICÁMENTE ÍNDICES ÚNICOS PARA ASEGURAR LOS CONSTRAINTS DE PRIMARY KEY Y UNIQUE EL ÍNDICE POR DEFECTO PARA LA CLAVE

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/92 Contenidos 1 Introducción a las bases de datos

Más detalles

Base de Datos SQL Server

Base de Datos SQL Server Base de Datos SQL Server Vistas GABRIELA LIBERATO SERRANO TIC-SI 2 D 1) Crear Base de Datos Club : create database Club use Club Crear tabla socios create table socios( documento char(8) not null, nombre

Más detalles

Objetos de la Base de Datos

Objetos de la Base de Datos Objetos de la Base de Datos Todos los datos de una base de datos de Microsoft SQL Server 2005/8 están contenidos en objetos llamados tablas. Cada tabla representa algún tipo de objeto con significado para

Más detalles

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1 UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEM LABORATORIO DE BES DE DATOS 1 Prof. Marco Aedo Práctica de Laboratorio Nº 6 I. OBJETIVOS

Más detalles

Administradores de Bases de Datos Studio.NET 2005 Y SQL Server 2005. Barrios

Administradores de Bases de Datos Studio.NET 2005 Y SQL Server 2005. Barrios Curso de SQL Server 2005 Developer e Introducción a VB.net Práctica No.1. Escribiendo y ejecutando código transact sql desde el Query Analyzer EELLAA BBO RRAADDO PPO RR: FFEECCHHAA DDEE EELLAABB OO RR

Más detalles

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

DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios. DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios. SUBSECTOR: Informática y Comunicación. Nombre del Módulo: Base de datos Código: CSTI0170 total: 94 horas Objetivo General: Resolver problemas

Más detalles

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

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas. Vistas. El resultado de una consulta en el caso de SQL siempre es una tabla, ésta se puede hacer permanente dentro de la base de datos. En este caso se dice que esta tabla resultado es una vista o una

Más detalles

ST31_Querying Microsoft SQL Server

ST31_Querying Microsoft SQL Server ST31_Querying Microsoft SQL Server Presentación Este curso de 5 días proporciona a los estudiantes las habilidades técnicas necesarias para escribir consultas de Transact-SQL básicas para Microsoft SQL

Más detalles