Sunteți pe pagina 1din 14

Tema 5: Normalizacin en Bases da Datos o

Andrs Cordn Franco e o

Departamento de Ciencias de la Computacin e Inteligencia Articial o UNIVERSIDAD DE SEVILLA

Bases de Datos Curso 200506

Contenido:

5.1 Introduccin a la Teor de la Normalizacin o a o en Bases de Datos 5.2 Dependencias funcionales. Tipos: completa, transitiva, trivial, elemental 5.3 Primera Forma Normal (1FN) 5.4 Segunda Forma Normal (2FN) 5.5 Tercera Forma Normal (3FN) 5.6 Forma Normal de BoyceCodd (FNBC)

Introduccin: o Relacin ESCRIBE: o AUTOR Date, C. Date, C. Gardarin Gardarin Kim,W. Problemas: 1. Redundancia de datos 2. Anomal de modicacin de datos as o 3. Anomal de insercin de datos as o 4. Anomal de borrados de datos as Formas normales(FN): conjunto de restricciones sobre tablas que evitan problemas de redundancia y anomal de modicacin, inas o sercin y borrado de datos. o
3

PA IS USA. USA Chile Chile China

COD 01 02 03 04 04

T ITULO DB SQL(I) ModeloER SQL(II) SQL(II)

EDIT. Ad Ad Verlag ACM ACM

Dependencias funcionales(I): R relacin, X, Y subconjuntos de sus campos. o () Y depende funcionalmente de X si cada valor de X tiene asociado el mismo valor de Y en la relacin R. Lo escribiremos: X Y . o X determinante o implicante Y campos implicados Ejemplo: Escribe(autor, pais, codigo, titulo, edit) autor pais codigo titulo, editorial cod, autor editorial, pais Nota: Dado un valor de X, no tiene por qu ser e posible averiguar el valor de Y . Slo se exige o que todas las tuplas que aparezcan en la tabla R con el mismo valor para los campos de X obligatoriamente tengan el mismo valor para los campos de Y .
4

Dependencias funcionales(II): () Dependencia funcional plena o completa: Y tiene dependencia funcional plena o completa del conjunto de campos X si depende funcionalmente de X, pero NO depende de ningn u subconjunto propio de X. Ejemplo: EVAL(alumno, asignatura, nota) El campo nota de la relacin EVAL tiene deo pendencia completa de alumno + asignatura. alumno, asignatura nota alumno nota nota asignatura

() Dependencia funcional trivial: X Y es trivial si Y es un subconjunto de X. Ejemplo: autor, cod autor alumno, asignatura, nota nota
5

Dependencias funcionales(III): () Dependencia funcional transitiva: Z tiene dependencia funcional transitiva respecto de X a travs de Y si se cumple: e (i) X Y , Y Z, pero (ii) Y X Ejemplo 1: LIBRO(isbn, editorial, pais, f echa) pais depende transitivamente de isbn, pues: isbn editorial editorial pais editorial isbn Ejemplo 2: CORREO(usuario, DN I, pais) pais NO depende de manera transitiva de DN I, puesto que: DN I usuario usuario pais, pero... usuario DN I Nota: DN I y usuario son campos equivalentes (lo escribiremos DN I usuario).
6

Dependencias funcionales(IV): () Dependencia funcional elemental: X Y es elemental si Y es un atributo unitario, y la dependencia funcional es completa y no trivial. Nota: Slo las dependencias elementales son o u tiles para la normalizacin. o Propiedad: Todas las dependencias funcionales de una relacin pueden deducirse a partir de o las dependencias elementales aplicando las siguientes reglas: Axiomas de Armstrong: (A1) (Reexin) o Si Y X, entonces X Y . (A2) (Aumentativo) Si X Y y Z W , XW Y Z. (A3) (Transitividad) Si X Y e Y Z, X Z.
7

Primera Forma Normal: Para estudira el grado de normalizacin de una o relacin R se parte de: o 1. Conjunto de las dependencias funcionales elementales que aparecen en R, y 2. Conjunto de todas las claves candidatas.

Denicin:[Codd,1970 ] Una relacin R est en o o a primera forma normal (1FN) si NO se admiten atributos multivaluados. Nota: Por la propia denicin del modelo de o datos relacional, NO se admiten atributos multivaluados. En consecuencia, TODAS las relaciones que aparecen en el modelo de datos relacional estn en 1FN. a
8

Segunda Forma Normal(I): Denicin: Un campo de R es principal si o pertenece a alguna clave candidata de R. Ejemplo: LIBRO(isbn, codlibro, autor, edi, f echa) Campos principales: isbn, codlibro. Denicin:[Codd,1970 ] R est en segunda foro a ma normal (2FN) si: 1. R est en 1FN, y a 2. cada campo NO principal de R tiene dependencia funcional completa respecto de cada una de las claves candidatas.

Nota: Para determinar si una relacin est en o a 2FN es necesario calcular previamente todas sus claves candidatas.
9

Segunda Forma Normal(II): Ejemplo: ESCRIBE(autor, pais, isbn, titulo, edit) La relacin ESCRIBE no est en 2FN. o a Clave candidata: (autor, isbn) autor, isbn pais Pero la dependencia no es completa!: autor pais () Cmo conseguir un conjunto de relaciones o equivalentes en 2FN? Idea: R1(autor, isbn), R2(autor, pais), R3(isbn, titulo, edit) Propiedad: Si todas las claves candidatas de una relacin son campos unitarios, dicha relao cin est en 2FN. o a
10

Tercera Forma Normal: Denicin:[Codd,1970 ] R est en tercera foro a ma normal (3FN) si: 1. R est en 2FN, y a u 2. ningn campo NO principal depende transitivamente de una clave candidata. Ejemplo: SOCIO(dni, ciudad, pais, edad) La relacin SOCIO no est en 3FN. El campo o a no principal pais depende transitivamente de la clave dni (a travs del campo ciudad). e () Cmo conseguir un conjunto de relaciones o equivalentes en 3FN? Idea: R1(dni, ciudad, edad), R2(ciudad, pais) Propiedad: Si una relacin tiene a lo sumo un o campo no principal, entonces est en 3FN. a
11

Forma Normal de Boyce-Codd(I): Recordar : Si X Y , entonces X es el implicante de la dependencia funcional. Denicin:[BoyceCodd,1974 ] R est en foro a ma normal de BoyceCodd (FNBC) si: a 1. R est en 2FN, y 2. todo implicante de R es una clave candidata de la relacin. o Propiedad: Si R est en forma normal de Boyce a Codd, entones tambin est en 3FN. e a Dem: Si un campo no principal X depende transitivamente de una clave a travs de un e campo Y , entones Y es un implicante de la relacin que no acta como clave candidata. o u
12

Forma Normal de Boyce-Codd(II): Ejemplo: Relacin EVAL o EVAL(dni, nombre, codalumno, asig, nota) La relacin EVAL no est en FNBC. o a Claves candidatas: (dni, codasig) y (codalumno, codasig) Se cumple que dni nombre. Luego, dni es un implicante que NO funciona como calve de la relacin EVAL. o () Cmo obtener un conjunto de relaciones o equivalentes en FNBC? Idea: R1(dni, codalumno, nombre), R2(dni, codasig, nota) Propiedad: Si R est en 3FN y sus claves cana didatas NO se solapan, entonces R tambin e est en FNBC. a
13

Bibliograf a:

Concepcin y diseo de bases de datos, o n Adoracin de Miguel, Mario Piattini, RA o MA Editorial (1993)

Apuntes de Ficheros y Bases de Datos, Mercedes Marqus, Universidad Jaume I en e Castelln (2001) o

14

S-ar putea să vă placă și