diseÑo de bases de datos relacionales normalización …fnbc (forma normal de boyce-codd) un...
TRANSCRIPT
DISEÑO DE BASES DE DATOS RELACIONALES
Normalización Parte 2 FNBC, 3FN
Bases de Datos I
MIS. Lizbeth Alejandra Hernández González
FNBC (Forma Normal de Boyce-Codd) Un esquema de relación R está en FNBC respecto
a un conjunto de dependencias funcionales F si, para todas las dependencias funcionales de F+ de la forma α →β, donde α ⊆ R y β ⊆ R, se cumple al menos una de las siguientes condiciones:
α →β es una dependencia funcional trivial (es decir, β ⊆ α)
α es una superclave del esquema R.
2
Ejemplo
Esquema-cliente = (nombre-cliente, calle-cliente, ciudad-cliente)
nombre-cliente → calle-cliente ciudad-cliente
Esquema-sucursal = (nombre-sucursal, activo, ciudad-sucursal)
nombre-sucursal → activo ciudad-sucursal
Esquema-info-préstamo = (nombre-sucursal, nombre-cliente, número-préstamo, importe)
número-préstamo → importe nombre-sucursal
Número-préstamo nombre-cliente 3
número-préstamo no es una superclave ni clave candidata de Esquema-infopréstamo
(Centro, Sr. Pinilla, P-44, 1.000)
(Centro, Sra. Pinilla, P-44, 1.000)
Esquema-info-préstamo no satisface la definición de FNBC.
4
repetición de información
Descomposición
Para evitar redundancia de información se pueden descomponer los esquemas que no estén en FNBC.
Esquemainfo-préstamo en dos esquemas:
Esquema-préstamo = (número-préstamo,nombre-sucursal, importe)
Esquema-prestatario = (nombre-cliente,número-préstamo)
5
Aunque número-préstamo no sea una superclave de Esquema-info-préstamo, es una clave candidata para Esquema-préstamo. Por tanto, los dos esquemas de la descomposición están en FNBC.
6
Comprobación
Para comprobar si el esquema de relación R se halla en FNBC basta con comprobar únicamente las dependencias del conjunto dado F en búsqueda de violaciones de FNBC, en lugar de comprobar todas las dependencias de F+.
7
Tercera Forma Normal (3FN)
En ella siempre hay una descomposición que conserva las dependencias.
Hay esquemas relacionales en que la descomposición FNBC no puede conservar las dependencias.
Emplear una descomposición alternativa, 3FN, que hace menos costoso el examen de las actualizaciones.
Las descomposiciones 3FN pueden contener cierta redundancia en el esquema descompuesto.
8
3FN
FNBC: α →β, donde α ⊆ R y β ⊆ R, α es una superclave de R.
3FN relaja ligeramente esta restricción permitiendo dependencias funcionales no triviales cuya parte izquierda no sea una superclave.
9
Un esquema de relación R está (3FN) respecto a un conjunto F de dependencias funcionales si, para todas las dependencias funcionales de F+ de la forma α →β, donde α ⊆ R y β ⊆ R, se cumple al menos una de las siguientes condiciones:
α →β es una dependencia funcional trivial.
α es una superclave de R.
Cada atributo A de β – α está contenido en alguna clave candidata de R. (dependencias transitivas)
10
Esquema-info-asesor = (nombre-sucursal,nombre-cliente, nombre-asesor, número-sucursal)
Las dependencias funcionales para este esquema de relación son:
nombre-asesor →nombre-sucursal número-sucursal
nombre-cliente nombre-sucursal → nombre-asesor
11
Esquema-asesor-sucursal = (nombre-asesor,nombre-sucursal, número-sucursal)
Esquema-asesor = (nombre-cliente,nombre-sucursal, nombre-asesor)
Como Esquema-asesor contiene una clave candidata de Esquema-info-asesor, el proceso de descomposición ha terminado.
12
Cualquier esquema que satisfaga FNBC satisface también 3FN, ya que cada una de sus dependencias funcionales satisfará una de las dos primeras alternativas.
1. FNBC
2. Reunión sin pérdida
3. Conservación de las dependencias
Como no siempre resulta posible satisfacer las tres, puede que haya que escoger entre FNBC y la conservación de las dependencias con 3FN.
13
15
Normalización Primera forma normal
Una tabla se encuentra en 1NF, si todos sus atributos son atómicos (indivisibles)
nombre dirección teléfono
nombre apellido_paterno apellido_materno dirección teléfono
16
Segunda Forma Normal
Una tabla se encuentra en 2NF, si está en 1NF y cada atributo que NO es llave es "completamente" dependiente de la llave.
Todos los atributos dependen de la clave principal
calificaciones_cursos
id_estudiante depto clave_curso descripción calificación
18
Tercera Forma Normal
La tabla se encuentra en 3FN si es 2FN y cada atributo que no forma parte de ninguna clave, depende directamente y no transitivamente, de la clave primaria.
id_empleado nombre_depto id_jefe
id_empleado --> nombre_depto, id_jefe nombre_depto --> id_jefe
empleados
deptartamentos
nombre_depto extensión id_jefe
nombre_depto --> extensión, jefe
19
Aplicando la normalización…
departamentos
nombre_depto extensión id_jefe
nombre_depto --> extensión, jefe
id_empleado nombre_depto
id_empleado --> nombre_depto
empleados