Академический Документы
Профессиональный Документы
Культура Документы
Datos
Semana 4
lunes, 25 de febrero de 2013 Base de Datos Ing. Ponte Roca Miguel Angel 1
2. Modelo relacional de datos
Objetivos
Comprender los principios estructurales del modelo de
datos relacional formal
Entender los conceptos integridad de entidad e
integridad referencial, y apreciar su importancia
Entender los significados e implicaciones del concepto
nulo en el modelo relacional
Comprender el concepto vista relacional, y la
problemtica asociada a la modificacin de datos a
travs de vistas
Conocer los lenguajes formales lgebra relacional y
clculo relacional de tuplas, as como el lenguaje
relacional estndar SQL-92
Tema 2. Modelo relacional de datos 2
2. Modelo relacional de datos
Contenidos
2.1 Presentacin y orgenes del modelo relacional
2.2 Estructura de datos relacional
2.3 Caractersticas generales de integridad de datos
2.4 Manipulacin de datos: lenguajes relacionales
2.4.1 lgebra relacional
2.4.2 Clculo relacional de tuplas
2.4.3 SQL-92
Dividido en 3 partes:
1. Estructura de Datos
2. Integridad de Datos (caractersticas generales)
3. Manipulacin de Datos
atributos
grado
Tema 2. Modelo relacional de datos 6
2.2 Estructura de datos relacional
Trminos bsicos
Procesamiento
Modelo Relacional de Ficheros
Formal SQL-92
Relacin Tabla Fichero
Si la tupla t est en la relacin
Tupla Fila Registro concreto
R, entonces tR
Debe tener un nombre nico cabecera de Nombre de
Atributo dentro de cada relacin Columna Campo de registro
Esquema o Cabecera
Conjunto de pares Atributo:Dominio
{ (A1:D1), (A2:D2) ... (An:Dn) }
Cada Aj tiene asociado slo un Dj
Los Di no tienen por qu ser distintos entre s
Ventajas
Representacin muy sencilla (tabla) del elemento abstracto
bsico (relacin) del Modelo Relacional
Fcil de utilizar, entender, razonar...
Inconveniente
Aparente orden entre filas y entre columnas de la tabla
Diagrama Referencial
Expresin de la existencia de Claves Ajenas
Camino Referencial
LIBRO Ttulo Isbn Autor Editorial ... EDITORIAL Nombre Direccin .
R2 R1
Operacin: Eliminar una tupla t de R1 que es referenciada
por otras de R2
Ejemplo: Eliminar la tupla (100, D, ...) de HABITACIN
Acciones posibles:
1. Rechazar la operacin (accin por defecto)
Slo permite borrar t si ninguna otra tupla hace referencia a t
2. Cascada. Propagar la eliminacin
1 Borrar todas las tuplas de R2 que referencian a t
2 Eliminar t
3. Establecer nulos (* se ver despus *)
R2 R1
Operacin: Modificar el valor de una FK a un valor no
existente en la PK de R1
Ejemplo: Modificar (CLI02, 420,...) a (CLI02, 900,...) en OCUPACIN
Accin:
1. Rechazar la operacin (SIEMPRE)
R2 R1
Operacin: Insercin de una tupla t en R2 cuyo valor de FK
no se corresponde con ningn valor de la PK en
ninguna tupla de R1
Ejemplo: Insertar una tupla (CLI03, 555, ...) en OCUPACIN
Acciones posibles:
- Rechazar la operacin (SIEMPRE)
R2 R1
Operacin: Modificar el valor de la PK de una tupla t de R1
que es referenciada por otras tuplas de R2
Acciones posibles:
1. Rechazar la operacin (accin por defecto)
2. Cascada. Propagar la modificacin
3. Establecer nulos
Slo si la FK de R2 permite NULO
- Toda tupla de R2 que referencia a t pasa a contener NULL en FK
- Modificar el valor de la PK de t
Expresiones Anidadas
Sus operandos son otras expresiones del lgebra
(en lugar de nombres de relacin)
Interseccin de relaciones
RS, con R y S compatibles en tipo, es una relacin tal que:
Esquema: el de R (o S)
Estado: conjunto de tuplas que estn a la vez en R y en S
Secuencias de operaciones
La propiedad de clausura relacional permite aplicar una
operacin tras otra
Sean R, S, T relaciones de tipos compatibles,
nica expresin: expresiones anidadas R(ST)
Varias expresiones: relaciones intermedias con nombre
AST
BRA
Tema 2. Modelo relacional de datos 43
2.4 Manip. de datos: lgebra Relacional
Producto Cartesiano entre relaciones
En matemticas, A B = { (a,b) / aA y bB }
Relacin = conjunto de tuplas,
es posible el producto cartesiano entre relaciones R y S
* Tuplas de actores representados por la agencia nmero 2
agencia=2 (ACTOR)
* Actores cuyo Honorario rebasa los 30.000
Honorario>30000 (ACTOR)
los 22.000, o bien por la agencia 4 y con Honorario superior a 32.000
<listAtrib>(<relacin>)
Resultado: Relacin (conjunto de tuplas) cuyos atributos son
slo los de <listAtrib> y en ese orden
<listAtrib> lista de nombres de atributos de <relacin>
T2 R S, tiene el esquema T2 ( a, b, c, d ) T2 a b c d
10 1 100 -5
20 3 100 -4
A a b B b
y1 x1 x1
y1 x2 x2
x3 R a
y1 x3
y1
y1 x4
y4
y2 x1
y2 x3
y1, y4 aparecen en A en combinacin con
y3 x2 las 3 tuplas de B, por eso estn en el
y3 x3 resultado R=AB
y3 x4 El resto de valores de y en A, no aparecen
y4 x1 con todas las tuplas de B y no son
y4 x2 seleccionadas: y2 no aparece con x2,
y4 x3 e y3 no aparece con x1
Funciones de agregados
Funciones matemticas de agregados sobre colecciones de valores de
la base de datos
Valor promedio del Honorario de todos los actores
Nmero de pelculas (almacenadas en la BD)
Mximo porcentaje de comisin de las distribuidoras de pelculas
Mnima recaudacin en taquilla
Cantidad total pagada a los actores de cierta pelcula
SUMA (Sum)
PROMEDIO (Avg)
MXIMO (Max)
MNIMO (Min)
CUENTA:nmero de tuplas en una relacin (Count)