La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Dependencias Funcionales

Presentaciones similares


Presentación del tema: "Dependencias Funcionales"— Transcripción de la presentación:

1 Dependencias Funcionales
Paul Leger

2 ¿Un buen o mal diseño? Los lineamientos informales de diseño son “buenos” consejos Sin embargo, ellos son un poco ambiguos Ahora formalizaremos el buen diseño con dependencias funcionales

3 Considere el siguiente esquema
Arrendatario(Rut_A, Nombre, Apellido) Arrienda(Rut_A, IdCasa, Deuda) Dueño(Rut_D, Nombre, Apellido) Casa(IdCasa, Rut_D, Numero, Calle, Comuna) Teléfono(Fono, Rut)

4 ¿Qué es una dependencia funcional?
X -> Y Dado dos conjuntos de atributos: X e Y en una relación R. Por ejemplo: R(X1, X2, X…, Xn, Y1, Y2, Y…, Ym) Los atributos de X definen los atributos de Y En otras palabras, los atributos de Y Dependen Funcionalmente (DF) de los atributos X Es decir, si t[X1] == t[X2], entonces t[Y1] = t[Y2] NOTA: En palabras simples, X es la primary key de una relación R Si X -> Y, entonces ¿Y -> X? ¿Un ejemplo?

5 Ejemplos Rut_D -> Nombre, Apellido (Dueño)
Rut_A, IdCasa -> Deuda (Arrienda) Fono > Rut (Teléfono) Para el mismo Rut_A y IdCasa ¿Es posible tener dos diferentes deudas? ¿Por qué?

6 Características DFs DFs son parte del esquema de una base de datos y no de los datos. Ejemplos: F = {Rut_A -> {Nombre, Apellido}, Rut_A, IdCasa -> {Deuda}, IdCasa -> {Rut_D, Numero, Calle, Comuna}} Es posible suponer algunas DFs mirando los datos, pero ¡cuidado! ¡Estas podrían estar erróneas! Las DFs son obtenidas de la descripción del problema (similarmente a cómo se obtiene la información para el ER)

7 Ejercicio: Usando el esquema sobre la BD de “arriendos”
F = { Rut_A -> {Nombre, Apellido}, Rut_A, IdCasa -> {Deuda}, IdCasa -> {Rut_D, Numero, Calle, Comuna} Rut_D -> {Nombre, Apellido} } Dado este conjunto de DFs en F, infiera una DF más IdCasa -> {Nombre, Apellido}

8 Reglas de Inferencias en DFs
HINT: Aunque no siempre sea cierto, ayudará en una primera comprensión que usted mire a la parte izquierda de una DF como primary keys Ejercicio: Dado el esquema de BD de “arriendos” y sus DFs asociadas, entregue dos o tres ejemplos de estas reglas

9 Un dato teórico: Una base de datos como una relación universal
Una base de datos se podría ver como una sola gran relación/tabla/archivo excel. Por ejemplo: T = {X1, …, Xj, …, Xn} Usando las DFs del problema, es posible descomponer T para construir el real conjunto de tablas que representa el modelo Esta descomposición es posible porque las DFs representan reglas del dominio (ej. primary keys) y representan cómo estas reglas se relacionan con los datos

10 Consejo Cuando vea un archivo Excel con una tabla muy grande, usted debe descomponer esta gran tabla en tablas pequeñas donde cada tabla tenga pocas tablas funcionales Idealmente solo una: la de la primary key!

11 Ejercicios: Usted decide organizar la administración de su música y tiene la siguiente información Un álbum tiene un solo titulo (denotado por el atributo T) Cada título tiene un único medio de publicación (S): DVD o USB Un grupo (CG) tiene un solo titulo por año (A) La duración (D) de una canción (C) puede variar en los distintos títulos (T) que incluyen esta canción (ej. una canción puede tener “covers” de distintas duraciones) En pocas palabras, tenemos R = {T, S, CG, A, C, D} Encuentra las dependencias funcionales Sea A la llave del esquema Q(A,B,C) ¿Qué dependencias funcionales implica la llave primaria? R = {T,S,CG,A, C,D} T->S CG,A -> T C,T->D CLAVE R {T

12 Paul Leger http://pleger.cl
¿Consultas? Paul Leger


Descargar ppt "Dependencias Funcionales"

Presentaciones similares


Anuncios Google