P. 1
Tema 4 Fundamentos de Base de Datos

Tema 4 Fundamentos de Base de Datos

|Views: 313|Likes:
Tema 4 Álgebra relacional - Fundamentos De Base de Datos
Tema 4 Álgebra relacional - Fundamentos De Base de Datos

More info:

Published by: Fernando Meneses Poveda on Apr 11, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/11/2011

pdf

text

original

Fundamentos de Base de Datos- Tema 4

Fundamentos de Base de Datos
Tema 4
Introducción Lenguajes de especificación en Modelo Relacional Codd propone 3 lenguajes teóricos – Algebra relacional (AR) – Cálculo relacional de tuplas (CRT) – Cálculo relacional de dominios (CRD) Esto son los minimos que debe cumplir todo lenguaje relacional. Solo son teóricos por la falta de operadores básicos. ¿Por qué álgebra relacional? Este esta basado en álgebra de conjuntos y usa 8 operadores con: operandos = relaciones, resulta = relación Conceptos previos Nombre cualificativo de atributo. Alias de una relación. Relación nominada: – Toda relación definida en el esquema lógico relacional – Esta siempre tiene un nombre Relación derivada: – Relación resultado de una expresión del Algebra Relacional. – No tiene ni nombre ni alias. – Ciertas reglas dependeran del operador y del orden de los operandos. Relaciones compatibles: – Dos relaciones R y S son compatibles si tiene la misma estructura: – El mismo grado y los mismos dominios asociados. Ejemplo relación compatible: – Empresas (dni: domDni, nombre: domNombre, fechaNacim: domFecha) – Alumnos (dni: domDni, nombre: domNombre, fechaNacim: domFecha) – Tienen el mismo grado n=3 – Y los mismos dominios asociados, por lo tanto son relaciones compatibles.

1

Fundamentos de Base de Datos- Tema 4

Operadores relacionales Teoría de conjuntos – Básicos o primitivas – Unión U – Diferencia – Producto cartesiano X Teoría de conjuntos – Derivados – Intersección ∩ Propios relacionales – Básicos o primitivas – Selección Donde ∂ – Proyección [] TT Propios relacionales – Básicos o primitivas – Concatenación (join) * ∞ – División / Operadores relacionales descripción uno a uno Selección: Su notación formal es ∂ y la comoda es donde. R donde predicado. Es un operador unario, define una relación con los mismos atributos que R que contenga la condición especificada (Predicado), el predicado puede componerse de conectivas Y, O. ALUMNOS donde (anyoNac>=1990 y anyoNac<2000) Proyección Su notación formal es TT, su notación comoda es []. R [A1, A2....] Es un operador unario. Define una relación con un subconjunto de atributos de R, que contiene solo aquellos valores de R correspondientes a los atributos especificados, mismos nombre y dominios de R, y elimina tuplas duplicadas, Ejemplos Selección y Proyección: PEATONES donde edad<=30 [Nombre] PEATONES [nombre] donde edad<=30 SELECT nombre FROM peatones WHERE edad<=30 Unión R U S, es la unión de dos relaciones R y S, es otra relación que contiene las tuplas que estan en R, o en S, o ambas, elimina las tuplas duplicadas, R y S deven ser compatibles, esta mantiene los nombres de atributos de R ALUMNOS[dni,nombre] U (PROFESORES[dni,nombre])

2

Fundamentos de Base de Datos- Tema 4

Intersección R∩S, La intersección de dos relaciones R y S, es otra relación que contiene l as tuplas que estan en R y en S, eliminado tuplas duplicadas, R y S deben ser compatibles, mantiene los nombre de atributos de R. ALUMNOS[dni, nombre]∩(PROFESORES[dni, nombre]) Diferencia R – S, la diferencia de dos relaciones R y S, es otra relación que contiene las tuplas que estan en R pero no en S, elimina tuplas duplicadas, R y S compatibles, matantiene los nombres de los atributos de R. ALUMNOS[dni, nombre] – (PROFESORES[dni, nombre]) Producto cartesiano R x S, el producto cartesiano de dos relaciones R y S, es otra relación que concatena cada tupla de R con todas las de S, mantiene los nombres de atributo de R y S, suele filtrar la concatenación con una selección. ALUMNOS x PROFESORES “Cada alumno con todos los profesores” ALUMNOS x PROFESORES donde ALUMNO.dni=PROFESOR.dni “Alumnos que son profesores” Concatenación natural (Natural join) R*S, la concatenación natural de dos relaciones R y S, con n atributos en común, es otra relación que concatena cada tupla R con aquellas de S con las que comparte los mismos valores en en los atributos comunes. Mantiene nombres de R y S. ALUMNOS * PROFESORES “Alumnos que son profesores” Propiedades de los operadores Concatenación, producto, unión, intersección, son conmutativos y asociativos, en cuanto se refiere al resultado R*S*T= S*(R*T) R*S= S*R Concatenación natural R(A:a, B:b, C:c), S(A:a, C:c, D:d, E:e) R*S (R.A, R.B, R.C, S.D, S.E) S*R (S.A, S.C, S.D, S.E, R.B)

3

Fundamentos de Base de Datos- Tema 4

Unión R(A:a, B:b, C:c). S(X:a, Y:b, Z:c) R U S (R.A, R.B, R.C) S U R (S.X, S.Y, SZ) División R/S, este obtiene la información de las tuplas de una relación operando (dividiendo) que se combinan con todas las tuplas de la otra relación operando (Divisor). Deben tener atributos comunes R[x,y]/(S[y]), la operación devuelve los R[x] relacionados con todos los S[y] a través de las tuplas de R[x,y]. No es ni conmutativa ni asociativa. Ejemplos Obtención de los alumnos matriculados en todas las asignaturas. AR: Matriculado[alumno, asignatura]/(Asignatura[ asignatura]]) BDR: otra perspectiva Imaginemos expresiones que, dependiendo de sus argumentos, se evalúan a cierto o falso. Calculos relacionales El CPPO puede adaptarse para su uso en base de datos relacionales. – Cálculo Relacional de Tuplas (Variables-tupla) – Cálculo Relacional de Dominios (Variable-dominio)

4

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->