Professional Documents
Culture Documents
BASES DE DATOS
CURSO 2007/2008
El nuevo modelo se basa en la teora matemtica de las relaciones. Los datos se estructuran lgicamente en forma de relaciones (muy parecido al concepto de tabla).
BASES DE DATOS
CURSO 2007/2008
El tremendo xito del modelo relacional ha supuesto que el cambio t d it d l d l l i lh t l bi tecnolgico a la siguiente generacin est siendo evolutivo y no revolucionario:
Triunfan los SGBD Objeto-Relacionales, y Fracasan, en general, los SGBD de Objetos puros.
BASES DE DATOS
CURSO 2007/2008
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos
Relacin: es la estructura bsica del modelo relacional. Se representan utilizando tablas. Atributo: son las propiedades de la relacin. Se representan mediante columnas en las tablas. Dominio: conjunto de valores sobre los que se define el tipo de un atributo. Tupla: ocurrencia de la relacin. Se representa mediante l i d l l i di filas dentro de las tablas.
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 5
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Dominio
El universo de discurso de una BDD relacional est compuesto por un conjunto de dominios {Di} y un conjunto de relaciones {Ri} definidas sobre esos dominios. Un dominio es un conjunto homogneo de valores identificado id ifi d por un nombre. b Un dominio puede definirse de dos formas
explcitamente: d d l semana = {l l it t das de la {lunes, martes, mircoles, i l jueves, viernes, sbado, domingo} usando tipos de datos: edad:entero p
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 6
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Atributo
Un atributo es la interpretacin de un determinado dominio en una relacin, es decir, la semntica de un dominio en una relacin. Un atributo representa una propiedad de una relacin. Un atributo tomar valores dentro de un domino. Distintos atributos de una relacin, e incluso de distintas relaciones, pueden tomar valores dentro de un mismo l i d l d d i dominio.
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 7
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Es el elemento fundamental del modelo relacional, y se representa usando tablas (aunque una tabla NO es una relacin).
BASES DE DATOS
CURSO 2007/2008
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Matemticamente, una relacin definida sobre un conjunto de dominios D1...Dn (no necesariamente distintos) es un subconjunto del producto cartesiano de los n dominios, donde cada elemento de la relacin (tupla) es una serie de n valores ordenados:
R D1 x D2 x ... x Dn, siendo n el grado de la relacin.
Est definicin no considera el concepto de atributo, por lo atributo que dentro del contexto de las bases de datos son p parmetros. caracterizadas adems por otros p
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 9
1. Estructura de las Bases de Datos Relacionales 1.2 E t t 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Una relacin se caracteriza por:
Un nombre que la identifica (algunos resultados intermedios no lo necesitan). Una cabecera de relacin que contiene n pares atributo-dominio donde toma valores el atributo. Donde n es el grado de la relacin. alores atrib to d relacin El cuerpo de la relacin contiene m tuplas. Cada tupla estar compuesta de n pares atributo-valor. Donde m se denomina cardinalidad de la relacin. El esquema de la relacin est formado por el nombre R de la relacin (si existe) y q p ( ) n la cabecera de la relacin. R({Ai:Di} i=1 ). Es similar al concepto de Entidad del modelo Entidad/Relacin. El estado r de una relacin de esquema R (se suele denominar simplemente relacin) se representa como r(R) y est constituido por el esquema y el cuerpo de la relacin: r(R) = <esquema, cuerpo>
BASES DE DATOS
CURSO 2007/2008
10
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Esquema de la relacin Autor
AUTOR (Nombre: Nombres, Nacionalidad: Nacionalidades, Institucin: Instituciones)
Relacin Autor
BASES DE DATOS
CURSO 2007/2008
11
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Ejemplo
BASES DE DATOS
CURSO 2007/2008
12
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Relaciones vs. Tablas Relacin
(modelo terico)
Tabla
(implementacin)
Relacin Tabla
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 13
1. Estructura de las Bases de Datos Relacionales 1.2 E 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Relaciones vs. Tablas Relacin Tabla
Una tabla no tiene las restricciones inherentes de una relacin (como conjunto). Una tabla puede tener dos filas iguales. Las filas estn ordenadas en el orden de grabacin fsica, por fsica defecto, o segn el valor de la clave primaria. Los atributos tienen un orden, segn se ha definido en la tabla. Una celda de una tabla puede contener ms de un valor.
BASES DE DATOS
CURSO 2007/2008
14
1. Estructura de las Bases de Datos Relacionales 1.2 E t t 1 2 Estructura del Modelo Relacional d lM d l R l i l
Elementos bsicos: Relacin
Tipos de relaciones
No nominadas N i d Nominadas
Persistentes: su definicin (esquema) permanece en la base de datos, borrndose solamente mediante una accin explcita del usuario. Relaciones base: existen por s mismas, no en funcin de otras relaciones. Se crean mismas relaciones especificando explcitamente su esquema de relacin (nombre y conjunto de pares atributo/dominio). Vistas (view): son relaciones derivadas que se definen dando un nombre a una expresin de consulta. Lo nico que se almacena es su definicin en trminos de i d lt L i l d fi i i t i d otras relaciones con nombre. Se corresponden con el nivel externo de la arquitectura ANSI.
BASES DE DATOS
CURSO 2007/2008
15
1. Estructura de las Bases de Datos Relacionales 1.2 1 2 Estructura del Modelo Relacional
Elementos bsicos: Relacin
Tipos de relaciones
No nominadas Nominadas
Persistentes Instantneas (snapshots): son relaciones derivadas al igual que las vistas, pero tienen datos propios almacenados, que son el resultado de ejecutar la consulta especificada. L i t t ifi d Las instantneas no se actualizan cuando cambian los datos de las t li d bi l d t d l relaciones sobre las que estn definidas, pero se renuevan cada cierto tiempo, de acuerdo con lo indicado por el usuario en el momento de su creacin. No pueden ser actualizadas por el usuario. Temporales: a diferencia de las persistentes, una relacin temporal desaparece de la BDD en un cierto momento sin necesidad de una accin de borrado especfica del usuario; por ejemplo, al terminar una sesin o una transaccin.
BASES DE DATOS
CURSO 2007/2008
16
BASES DE DATOS
CURSO 2007/2008
17
BASES DE DATOS
CURSO 2007/2008
20
BASES DE DATOS
CURSO 2007/2008
21
BASES DE DATOS
CURSO 2007/2008
22
BASES DE DATOS
CURSO 2007/2008
24
Asercin (ASSERTION)
La asercin funciona de forma similar a la verificacin, pero en este caso l condicin puede afectar a varios elementos, incluso a varias la di i d f i l i l i relaciones.
CREATE ASSERTION CONCEDE_SOLICITA AS CHECK (SELECT Cod_Estudiante, Cod_Beca FROM CONCEDE) IN (SELECT Cod_Estudiante, Cod_Beca FROM SOLICITA));
BASES DE DATOS
CURSO 2007/2008
25
ESTUDIANTES
CURSOS
CREATE TABLE estudiantes ( DNI CHAR(8) PRIMARY KEY, nombre VARCHAR2(20), apellidos VARCHAR2(20), localidad VARCHAR2(30), telefono CHAR(9) );
BASES DE DATOS
CURSO 2007/2008
26
CREATE TABLE matricula ( CODIGO CHAR(5) REFERENCES CURSOS(CODIGO), DNI CHAR(8) REFERENCES ESTUDIANTES(DNI), PRIMARY KEY (CODIGO,DNI) );
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 27
BASES DE DATOS
CURSO 2007/2008
28
BASES DE DATOS
CURSO 2007/2008
29
Ejemplo 2:
F = { CP Ciudad, Ciudad, Direccion Ci d d Ci d d Di i CP } (en la relacin Cdigo Postal(Direccion, Ciudad, CP) ).
Una relacin se podr describir como: (R, F), donde R es el conjunto de atributos de la relacin y F el conjunto de dependencias funcionales entre dichos atributos.
Toms Rojo Vctor Lpez BASES DE DATOS
CURSO 2007/2008 30
A2. Aumento
X X Y Y XZ Y Z
A3. Transitividad X
Z
Una DF f se deriva de F (F f ) si existe una secuencia f1, f2, ......, fn / fn = f y ( cada fi o bien pertenece a F o bien se deriva de las dependencias precedentes mediante la utilizacin de los axiomas de Armstrong.
BASES DE DATOS
CURSO 2007/2008
32
YZ
R2. Pseudotransitividad
Y XW Z Z
R3. Descomposicin X
Z
BASES DE DATOS
CURSO 2007/2008
33
Un subconjunto de atributos X de una relacin R({A1 A2 An },F) es clave candidata de dicha relacin si
X A1 A2 An F+ Y X / Y A1 A2 An F+
BASES DE DATOS
CURSO 2007/2008
34
Lema: si X
El clculo del cierre de un subconjunto de atributos permitir determinar si una DF pertenece o no al cierre de ese subconjunto de atributos, lo que permite determinar si un subconjunto es clave o no.
BASES DE DATOS
CURSO 2007/2008
35
Salida
X+ (Cierre de X respecto a F)
BASES DE DATOS
CURSO 2007/2008
37
Es fcil saber si dos conjuntos de dependencias funcionales F y G son equivalentes comprobando que
F G+ G F+
Lema: todo conjunto de dependencias funcionales F es equivalente a un conjunto de dependencias funcionales G en el que no existen dependencias funcionales con ms de un atributo en el lado derecho. Teorema: todo conjunto de dependencias funcionales F tiene al menos una cobertura minimal (aunque no es nica).
BASES DE DATOS
CURSO 2007/2008
38
E,D
G , BE
40