Base de Datos I. Es un lenguaje con el que los usuarios solicitan información de la BD. Estos lenguajes suelen ser de nivel superior que el de los lenguajes.

Slides:



Advertisements
Presentaciones similares
Dpto. Informática IES Juan de la Cierva
Advertisements

COLEGIO DE BACHILLERES PLANTEL #13 Xochimilco-TEPEPAN
IBD Clase 14.
Diseño de Bases de Datos
integridad referencial
Rocío Contreras Águila Primer Semestre 2010
Lenguajes Relacionales
Aprendizaje de Microsoft® Access® 2010
ALGEBRA RELACIONAL Y CALCULO RELACIONAL CON REFERENCIA A BASE DE DATOS
INTELIGENCIA ARTIFICIAL
Consultas anidadas.
Estadística Computacional I
Estadística Computacional I
Teórico: Algebra Relacional
Ejercicios de Álgebra Relacional Bases de Datos I
ALGEBRA RELACIONAL.
Teoría de Bases de Datos
Unidad III (antes Unidad 4)
Tema 8 : Sistemas relacionales Resumen Sobre el modelo relacional
Procesamiento de Consultas Distribuidas (1era Parte)
BASE DE DATOS I Clase # 1.

Lenguajes Formales de Consulta
SQL Structured Query Language
1 John Freddy Duitama U.de.A. Facultad de Ingeniería Optimización Algebraica. Profesor: John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. Profesor:
Departamento de Tecnología Curso: 4º E.S.O. I.E.S. Ana Mª Matute
 LOPEZ MENDOZA CORINA AMALINALLI  GRUPO 304.  Una base de datos o banco de datos (en ocasiones abreviada BB.DD.) es un conjunto de datos pertenecientes.
Algebra Relacional.
Álgebra Relacional. zUnión, intersección y diferencia: los operadores usuales de conjuntos zSelección: Escoger ciertas filas zProyección: Escoger ciertas.
UNIVERSIDAD AUTONOMA SAN FRANCISCO
1.1 Concepto y terminología
BASE DE DATOS BY: Julián Villar Vázquez.
John Freddy Duitama Muñoz. Facultad de Ingeniería. U. de. A.
HERRAMIENTAS DE EXCEL ORDENAR Y FILTAR.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
BASE DE DATOS I Clase # 3.
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Algebra Relacional Ing. Fabián Ruano.
Algebra Relacional.
CONSULTAS SENCILLAS A LA BASE DE DATOS
ALGEBRA RELACIONAL OPERACIONES BASICAS.
Diseño de base de datos Tema 4 : Algebra relacional.
Bases de Datos Sql.
Restricciones de Integridad
Expresiones algebraicas equivalentes
PASO DEL ESQUEMA E-R AL MODELO RELACIONAL
Bases de Datos en Excel Microsoft Excel aporta al usuario la posibilidad de trabajar con tablas de información: nombres, direcciones, teléfonos, zonas,
UNIDAD III: MODELAJE DE BASE DE DATOS RELACIONAL..
Ingeniería de Sistemas y Modelamiento.
MARTÍNEZ VALLEJO ISAMAR SCANDA MONTOYA MENDOZA DIANA RUBI GRUPO: 304.
Para pasar a tablas todos los datos sin dejar nada y que las tablas tengan sentido por si solas se tiene que seguir unos pasos: 1.Toda entidad se transforma.
COLEGIO DE BACHILLERES PLANTEL #13 Xochimilco-TEPEPAN NOMBRE DEL PROFESORA: Gabriela Pichardo NOMBRE DEL ALUMNO: García monroy jazmín GRADO: 3er Semestre.
Lenguajes de consulta: son aquellos en que el usuario interroga o solicita información a la base de datos. Estos lenguajes se clasifican en procedimentales.
Tipos de Datos.
HERRAMIENTAS OFIMÁTICAS M.S.C. IVETTE HERNÁNDEZ DÁVILA
Bases de Datos Modelo Relacional.
JOIN EN MYSQL Bueno en esta presentación mostrare cosas acerca de los usos de la sentencia JOIN en mysql , mediante esta presentación planeo mostrar los.
INTERFAZ DE ACCESS  Access es un sistema gestor de bases de datos relacionales (SGBD). Una base de datos suele definirse como un conjunto de información.
Introducción a la Base de Datos Profesora: Nelwi Báez.
Maestría en ciencias de la computación
Base de Datos I – Ing. Mary Carlota Bernal J.
Administración de Base de Datos Procesamiento y Optimización de Consultas Prof Mercy Ospina Torres Prof Renny A. Hernandez
Circuitos Combinacionales I
Administración de Base de Datos Procesamiento y Optimización de Consultas Prof Mercy Ospina Torres Prof Renny A. Hernandez
Las interfaces Predicate y Function Versión Unidad Didáctica 17 Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos.
Administración de Base de Datos Procesamiento y Optimización de Consultas Prof Mercy Ospina Torres Prof Renny A. Hernandez
DML Transact SQL Sesión VI Trabajando con subconsultas.
Equipo de Profesores del Curso. Funciones de Texto.
Algebra relacional Integrantes: Víctor Sergio López Sainz. Francisco Javier centeno. Verdín Carlos Omar.
Transcripción de la presentación:

Base de Datos I

Es un lenguaje con el que los usuarios solicitan información de la BD. Estos lenguajes suelen ser de nivel superior que el de los lenguajes de programación habituales. 2

Clasificación  Procedimentales  No procedimentales 3

Clasificación  Procedimentales El usuario indica al sistema que lleve a cabo una serie de operaciones en la BD para calcular el resultado. 4

Clasificación  No procedimentales El usuario describe la información deseada sin dar un procedimiento concreto para obtener la información. 5

Dentro de estos lenguajes podemos encontrar: o Álgebra Relacional (Procedimental) o Cálculo Relacional de Tuplas (No procedimental) o Cálculo Relacional de Dominios (No procedimental) 6

Lenguaje de consulta procedimental basado en álgebra de conjuntos. Serie de operaciones que toman una o dos relaciones como entrada y generan una relación como salida, pero siempre sin modificar los de la base de datos (es un lenguaje de consulta). 7

Las operaciones son:  Selección  Proyección  Reunión (JOIN o producto cartesiano con condición)  División  Operaciones habituales de conjuntos: unión, intersección, resta y producto cartesiano. 8

La operación de selección da como resultado un conjunto de tuplas que cumplen la condición de selección aplicada sobre la entrada. 9

σ c (R)= conjunto de tuplas de la relación R que cumplen la condición c. Donde:  R será un esquema de relación o una expresión que lo represente.  c será un conjunto de cláusulas conectadas entre sí mediante operadores booleanos ( ∧, ∨, ¬). 10

Cada cláusula será de la forma: OPCOMP Donde: OPCOMP será un operador de comparación (=, ≠,, ≥) El resultado de la consulta es una selección con los mismos atributos que la original. 11

Ejemplo: base de datos de empleados. EMP (DNI, NOM, AP1, AP2, SUELDO)  Empleados con sueldo superior a $1200 σ SUELDO> 1200 (EMP)  Empleados cuyos apellidos sean iguales: σ AP1= AP2 (EMP)  Empleados con sueldo superior a $1200 cuyos apellidos sean iguales: σ (SUELDO > 1200) ∧ (AP1 = AP2) (EMP) 12

Ejercicios: Tabla sucursal 13 No. sucursalNombre de la sucursal Ciudad de la Sucursal Activos 1AldamaPuebla9,000,000 2CentroTeotitlán de F. M.7,500 3La lomaHuautla de J.2, de MayoTehuacán3,700,000 5PortalesOaxaca1,700,000 6San JerónimoTeotitlán de F. M.1,500 7RevoluciónTehuacán8,000,000

Ejercicios:  Sucursales que estén en la ciudad de Tehuacán.  Sucursales cuyos activos sean menores o iguales que 8,000.  Sucursales que no estén en Tehuacán y con mayores a 8,000 y menores a 9,000,

La operación de proyección devuelve las tuplas de la relación que se le pasa como argumento, omitiendo ciertas columnas. 15

Los atributos que se requieran obtener se colocan como subíndice de la operación, separados por comas. Π LISTA_ATRIBUTOS (R) = conjunto de tuplas de R con los atributos de la lista. 16

Ejemplo: base de datos de empleados. EMP (DNI, NOM, AP1, AP2, SUELDO) DNI y sueldo de todos los empleados: Π DNI, SUELDO ( EMP ) DNI de los empleados con más de 1200 de sueldo: Π DNI ( σ SUELDO > 1200 ( EMP ) ) 17

DNI de los empleados con más de de sueldo, “dos pasos”: R1 ← σ SUELDO > 1200 ( EMP ) /* Tuplas de EMP con sueldo > 1200 */ R2 ← Π DNI ( R1 )/* DNI empleados con sueldo > 1200 */ 18

Ejercicios: Tabla Cursos 19 Cód. curso Nombre cursoprofesorFecha inicio Fecha FinhorarioPrecio C001Programación Web P :00 a 13: C002Base de DatosP :00 a 15: C003MatemáticasP :00 a 11:

Ejercicios: Nombre de curso cuyo precio sea menor a 120. Código de los cursos que sean impartidos entre las fechas y Nombre de todos los cursos que estén en el horario de 9:00 a 13:00. 20

La operación de renombramiento permite cambiar el nombre del esquema y de las columnas de otro esquema. La relación resultante contiene las mismas tuplas que el Esquema original. 21

Ejemplo: Los atributos de una relación se pueden renombrar para facilitar el manejo de atributos: /* Renombramiento de DNI a D */ ρ EMP (D,NOM,AP1,AP2,SUELDO) (EMP) /* Renombramiento de todos los atributos */ ρ EMP(D,N,A1,A2,S)( EMP) 22

Ejemplo: Es también posible realizar copias de relaciones renombrando o no sus atributos: /* Copia de EMP a EMP1 sin renombrar atributos */ ρ EMP1(DNI, NOM, AP1, AP2, SUELDO) (EMP) 23

Operaciones típicas de conjuntos. Las relaciones deben ser compatibles: Mismo número de atributos y mismo dominio dos a dos: R1 (A1, A2,... An) R2 (B1, B2, …Bn) Para todo i, 1 ≤ i ≤ n, Dom (Ai) = Dom (Bi) El resultado de estas operaciones será otra relación (no repite tuplas). 24

En la relación resultante, los atributos serán los de la relación que pongamos como primer operando. Lo habitual es realizar uniones, intersecciones y restas con esquemas exactamente iguales. 25

Ejemplo: EST (DNI_EST, NOMB_EST) PROF (DNI_PROF, NOMB_PROF) Personas que son alumnos o son profesores: ρ PER(DNI, NOMBRE) (ρ EST(DNI,NOMBRE) (EST) ∪ ρ PROF(DNI, NOMBRE) (PROF)) 26

Esta es una operación binaria. No exige que las relaciones sean compatibles. R1 (A 1,..., A n ) × R2 (B 1,..., B m ) → R (A 1,..., A n, B 1,..., B m ) La relación resultante, R, contiene tuplas con los atributos de ambas relaciones. Pero esas tuplas son el resultado de combinar cada una de las tuplas de la primera relación con todas las de la segunda. 27

28 R1 (A 1,..., A n )R2 (B 1,..., B m )R1 (A 1,..., A n ) × R2 (B 1,..., B m ) x 1,..., x 1 x 2,..., x 2 x 3,..., x 3 y 1,..., y 1 y 2,..., y 2 x 1,..., x 1,y 1,..., y 1 x 1,..., x 1, y 2,..., y 2 x 2,..., x 2, y 1,..., y 1 x 2,..., x 2, y 2,..., y 2 x 3,..., x3, y 1,..., y 1 x 3,..., x3, y 2,..., y 2

Ejemplo: Para el siguiente esquema se pide obtener el DNI de los empleados que trabajan en el departamento “Contabilidad”. 29

Ejemplo: Pasos a seguir: Combinar los datos de ambas tablas. Quedarse con las filas donde cada empleado aparezca junto a su Departamento y además el nombre del departamento sea “Contabilidad” Filtrar campos para obtener DNI. 30

Ejemplo: Solución 1: RES ←Π DNI ( σ NUMDE = ND ∧ NOMD = “Contabilidad” ( EMP × DPTO ) ) Solución 2:  R1 ← σ NOMD = “Contabilidad” (DPTO)  R2 ← Π ND (R1)  R3 ← EMP × R2  R4 ← σ NUMDEP = ND (R3)  RES ←Π DNI (R4) 31

En un producto cartesiano puede aparecer el mismo nombre de atributo en R1 y R2. Es necesario crear un convenio de denominación para distinguir unos atributos de otros. En este caso se realiza adjuntando el nombre de la relación de la que procede originalmente. Conviene evitarlo utilizando renombramiento. 32

Ejemplo: RES←Π DNI (σ EMP.NUM= DPTO.NUM ∧ NOM = “Contabilidad” (EMP×DPTO)) 33

Ejercicio: Para el siguiente esquema se pide obtener el DNI de los empleados que trabajan en el departamento “Contabilidad”. 34

Ejercicio: Para el siguiente esquema se pide obtener el nombre de los empleados que trabajan en proyectos dirigidos por “López”. 35

Ejercicio: Para el siguiente esquema se pide obtener el nombre de los empleados que trabajan en proyectos dirigidos por “López”. 36

Ejercicio: Para el siguiente esquema se pide obtener el DNI de los empleados cuyo supervisor gana más de

Ejercicio: Para el siguiente esquema se pide obtener el DNI de los empleados supervisados por DNI =

Ejercicio: Operación binaria que implementa el producto cartesiano con condición. R1 c R2 = conjunto de tuplas resultantes del producto cartesiano R1 × R2 que cumplen la condición c. 39

Ejercicio: Operación binaria que implementa el producto cartesiano con condición. R1 c R2 = conjunto de tuplas resultantes del producto cartesiano R1 × R2 que cumplen la condición c. Es decir: R1 c R2 ≡ σc (R1 × R2) 40

Ejemplo 41

Ejemplo 42 La figura siguiente representa la reunión de la relación PROV1 con la relación REC cuando el NIF de PROVl coincide con el atributo NIF-PRO de PREC.

Ejemplo Producto cartesiano con condición implícita: se seleccionan aquellas tuplas cuyos valores coincidan en los atributos con igual nombre. Se eliminan los atributos duplicados Dados R1(r) y R2(s) donde Ai, 1<=i<=k son atributos comunes a R1 y R2 R1 R2 ≡Π r∩s (σ R1.A1=R2.A1…R1.Ak=R2.Ak (R1 × R2) Si no hay atributos comunes, es decir, r ∩s= ∅ R1 R2 ≡ R1 × R2 43

Ejemplo: La figura siguiente representa la reunión natural de la relación PROV1 con la relación PREC cuando el NIF de PROVl coincide con el atributo NIF-PRO de PREC. Observemos que no aparece duplicado el atributo NIF. 44

Ejemplo: 45

46

Ejercicios: 47